From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=192.55.52.88; helo=mga01.intel.com; envelope-from=jian.j.wang@intel.com; receiver=edk2-devel@lists.01.org Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 547F2202E530A for ; Mon, 18 Feb 2019 06:16:26 -0800 (PST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 18 Feb 2019 06:16:25 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.58,385,1544515200"; d="scan'208";a="321313583" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by fmsmga005.fm.intel.com with ESMTP; 18 Feb 2019 06:16:25 -0800 Received: from fmsmsx111.amr.corp.intel.com (10.18.116.5) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.408.0; Mon, 18 Feb 2019 06:16:25 -0800 Received: from shsmsx152.ccr.corp.intel.com (10.239.6.52) by fmsmsx111.amr.corp.intel.com (10.18.116.5) with Microsoft SMTP Server (TLS) id 14.3.408.0; Mon, 18 Feb 2019 06:16:24 -0800 Received: from shsmsx107.ccr.corp.intel.com ([169.254.9.162]) by SHSMSX152.ccr.corp.intel.com ([169.254.6.109]) with mapi id 14.03.0415.000; Mon, 18 Feb 2019 22:15:33 +0800 From: "Wang, Jian J" To: "Zhang, Shenglei" , "edk2-devel@lists.01.org" CC: "Wu, Hao A" , "Ni, Ray" , "Zeng, Star" Thread-Topic: [PATCH] MdeModulePkg/PropertiesTableAttributesDxe: Remove this driver Thread-Index: AQHUx2dXJneTC1zI0UK1uWbfRhdpWaXlmelQ Date: Mon, 18 Feb 2019 14:15:33 +0000 Message-ID: References: <20190218085240.8400-1-shenglei.zhang@intel.com> In-Reply-To: <20190218085240.8400-1-shenglei.zhang@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiYWI5Y2U1Y2ItMGYwOC00ZWU4LTk2MjItOTdjYjAyMzA0OTE3IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoibVhxazc1YlpvSjFHamtKUFZPcmx6akE0WFZpWFE0TTQrbk1rd3UwYktcL0M3ZmwxRWlUZHNhWEZpYW9JR2pUT2gifQ== x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.400.15 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [PATCH] MdeModulePkg/PropertiesTableAttributesDxe: Remove this driver X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 18 Feb 2019 14:16:26 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Jian J Wang > -----Original Message----- > From: Zhang, Shenglei > Sent: Monday, February 18, 2019 4:53 PM > To: edk2-devel@lists.01.org > Cc: Wang, Jian J ; Wu, Hao A ; > Ni, Ray ; Zeng, Star > Subject: [PATCH] MdeModulePkg/PropertiesTableAttributesDxe: Remove this > driver >=20 > This functionality of this driver has been deprecated and > no platform employs this driver. It can be removed completely. > https://bugzilla.tianocore.org/show_bug.cgi?id=3D1475 >=20 > Cc: Jian J Wang > Cc: Hao Wu > Cc: Ray Ni > Cc: Star Zeng > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Shenglei Zhang > --- > MdeModulePkg/MdeModulePkg.dsc | 1 - > .../PropertiesTableAttributesDxe.c | 208 ------------------ > .../PropertiesTableAttributesDxe.inf | 56 ----- > .../PropertiesTableAttributesDxe.uni | 23 -- > .../PropertiesTableAttributesDxeExtra.uni | 23 -- > 5 files changed, 311 deletions(-) > delete mode 100644 > MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttrib= u > tesDxe.c > delete mode 100644 > MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttrib= u > tesDxe.inf > delete mode 100644 > MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttrib= u > tesDxe.uni > delete mode 100644 > MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttrib= u > tesDxeExtra.uni >=20 > diff --git a/MdeModulePkg/MdeModulePkg.dsc > b/MdeModulePkg/MdeModulePkg.dsc > index 4f2ac8ae89..388bca25bd 100644 > --- a/MdeModulePkg/MdeModulePkg.dsc > +++ b/MdeModulePkg/MdeModulePkg.dsc > @@ -413,7 +413,6 @@ > MdeModulePkg/Universal/EsrtDxe/EsrtDxe.inf > MdeModulePkg/Universal/EsrtFmpDxe/EsrtFmpDxe.inf >=20 > - > MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttrib= u > tesDxe.inf > MdeModulePkg/Universal/FileExplorerDxe/FileExplorerDxe.inf { > > FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerL= ib.inf > diff --git > a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttr= i > butesDxe.c > b/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttr= i > butesDxe.c > deleted file mode 100644 > index 4d1a46f64c..0000000000 > --- > a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttr= i > butesDxe.c > +++ /dev/null > @@ -1,208 +0,0 @@ > -/** @file > - This module sets default policy for attributes of EfiACPIMemoryNVS and > EfiReservedMemoryType. > - > - This module sets EFI_MEMORY_XP for attributes of EfiACPIMemoryNVS and > EfiReservedMemoryType > - in UEFI memory map, if and only of PropertiesTable is published and ha= s BIT0 > set. > - > -Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.
> -This program and the accompanying materials > -are licensed and made available under the terms and conditions of the BS= D > License > -which accompanies this distribution. The full text of the license may b= e found > at > -http://opensource.org/licenses/bsd-license.php > - > -THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, > -WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS > OR IMPLIED. > - > -**/ > - > -#include > -#include > -#include > -#include > -#include > -#include > -#include > -#include > - > -/** > - Converts a number of EFI_PAGEs to a size in bytes. > - > - NOTE: Do not use EFI_PAGES_TO_SIZE because it handles UINTN only. > - > - @param Pages The number of EFI_PAGES. > - > - @return The number of bytes associated with the number of EFI_PAGEs > specified > - by Pages. > -**/ > -UINT64 > -EfiPagesToSize ( > - IN UINT64 Pages > - ) > -{ > - return LShiftU64 (Pages, EFI_PAGE_SHIFT); > -} > - > -/** > - Set memory attributes according to default policy. > - > - @param MemoryMap A pointer to the buffer in which firmware pla= ces > the current memory map. > - @param MemoryMapSize Size, in bytes, of the MemoryMap buffer. > - @param DescriptorSize size, in bytes, of an individual > EFI_MEMORY_DESCRIPTOR. > -**/ > -VOID > -SetMemorySpaceAttributesDefault ( > - IN EFI_MEMORY_DESCRIPTOR *MemoryMap, > - IN UINTN MemoryMapSize, > - IN UINTN DescriptorSize > - ) > -{ > - EFI_MEMORY_DESCRIPTOR *MemoryMapEntry; > - EFI_MEMORY_DESCRIPTOR *MemoryMapEnd; > - EFI_STATUS Status; > - > - DEBUG ((EFI_D_INFO, "SetMemorySpaceAttributesDefault\n")); > - > - MemoryMapEntry =3D MemoryMap; > - MemoryMapEnd =3D (EFI_MEMORY_DESCRIPTOR *) ((UINT8 *) MemoryMap + > MemoryMapSize); > - while ((UINTN)MemoryMapEntry < (UINTN)MemoryMapEnd) { > - if (MemoryMapEntry->PhysicalStart < BASE_1MB) { > - // > - // Do not touch memory space below 1MB > - // > - MemoryMapEntry =3D NEXT_MEMORY_DESCRIPTOR (MemoryMapEntry, > DescriptorSize); > - continue; > - } > - switch (MemoryMapEntry->Type) { > - case EfiRuntimeServicesCode: > - case EfiRuntimeServicesData: > - // > - // should be handled later; > - // > - break; > - case EfiReservedMemoryType: > - case EfiACPIMemoryNVS: > - // > - // Handle EfiReservedMemoryType and EfiACPIMemoryNVS, because ther= e > might be firmware executable there. > - // > - DEBUG ((EFI_D_INFO, "SetMemorySpaceAttributes - %016lx - %016lx > (%016lx) ...\n", > - MemoryMapEntry->PhysicalStart, > - MemoryMapEntry->PhysicalStart + EfiPagesToSize (MemoryMapEntry- > >NumberOfPages), > - MemoryMapEntry->Attribute > - )); > - Status =3D gDS->SetMemorySpaceCapabilities ( > - MemoryMapEntry->PhysicalStart, > - EfiPagesToSize (MemoryMapEntry->NumberOfPages), > - MemoryMapEntry->Attribute | EFI_MEMORY_XP > - ); > - DEBUG ((EFI_D_INFO, "SetMemorySpaceCapabilities - %r\n", Status)); > - break; > - } > - > - MemoryMapEntry =3D NEXT_MEMORY_DESCRIPTOR (MemoryMapEntry, > DescriptorSize); > - } > - > - return ; > -} > - > -/** > - Update memory attributes according to default policy. > - > - @param[in] Event The Event this notify function registered to. > - @param[in] Context Pointer to the context data registered to the Ev= ent. > -**/ > -VOID > -EFIAPI > -UpdateMemoryAttributesDefault ( > - EFI_EVENT Event, > - VOID *Context > - ) > -{ > - EFI_STATUS Status; > - EFI_MEMORY_DESCRIPTOR *MemoryMap; > - UINTN MemoryMapSize; > - UINTN MapKey; > - UINTN DescriptorSize; > - UINT32 DescriptorVersion; > - EFI_PROPERTIES_TABLE *PropertiesTable; > - > - DEBUG ((EFI_D_INFO, "UpdateMemoryAttributesDefault\n")); > - Status =3D EfiGetSystemConfigurationTable (&gEfiPropertiesTableGuid, (= VOID **) > &PropertiesTable); > - if (EFI_ERROR (Status)) { > - goto Done; > - } > - > - ASSERT (PropertiesTable !=3D NULL); > - > - DEBUG ((EFI_D_INFO, "MemoryProtectionAttribute - 0x%016lx\n", > PropertiesTable->MemoryProtectionAttribute)); > - if ((PropertiesTable->MemoryProtectionAttribute & > EFI_PROPERTIES_RUNTIME_MEMORY_PROTECTION_NON_EXECUTABLE_PE_D > ATA) =3D=3D 0) { > - goto Done; > - } > - > - // > - // Get the EFI memory map. > - // > - MemoryMapSize =3D 0; > - MemoryMap =3D NULL; > - Status =3D gBS->GetMemoryMap ( > - &MemoryMapSize, > - MemoryMap, > - &MapKey, > - &DescriptorSize, > - &DescriptorVersion > - ); > - ASSERT (Status =3D=3D EFI_BUFFER_TOO_SMALL); > - do { > - MemoryMap =3D (EFI_MEMORY_DESCRIPTOR *) AllocatePool > (MemoryMapSize); > - ASSERT (MemoryMap !=3D NULL); > - Status =3D gBS->GetMemoryMap ( > - &MemoryMapSize, > - MemoryMap, > - &MapKey, > - &DescriptorSize, > - &DescriptorVersion > - ); > - if (EFI_ERROR (Status)) { > - FreePool (MemoryMap); > - } > - } while (Status =3D=3D EFI_BUFFER_TOO_SMALL); > - ASSERT_EFI_ERROR (Status); > - > - SetMemorySpaceAttributesDefault (MemoryMap, MemoryMapSize, > DescriptorSize); > - > -Done: > - gBS->CloseEvent (Event); > - > - return ; > -} > - > -/** > - The entrypoint of properties table attribute driver. > - > - @param ImageHandle The firmware allocated handle for the EFI image= . > - @param SystemTable A pointer to the EFI System Table. > - > - @retval EFI_SUCCESS It always returns EFI_SUCCESS. > - > -**/ > -EFI_STATUS > -EFIAPI > -InitializePropertiesTableAttributesDxe ( > - IN EFI_HANDLE ImageHandle, > - IN EFI_SYSTEM_TABLE *SystemTable > - ) > -{ > - EFI_STATUS Status; > - EFI_EVENT ReadyToBootEvent; > - > - Status =3D gBS->CreateEventEx ( > - EVT_NOTIFY_SIGNAL, > - TPL_CALLBACK, > - UpdateMemoryAttributesDefault, > - NULL, > - &gEfiEventReadyToBootGuid, > - &ReadyToBootEvent > - ); > - ASSERT_EFI_ERROR (Status); > - > - return EFI_SUCCESS; > -} > diff --git > a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttr= i > butesDxe.inf > b/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttr= i > butesDxe.inf > deleted file mode 100644 > index a8edf854bb..0000000000 > --- > a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttr= i > butesDxe.inf > +++ /dev/null > @@ -1,56 +0,0 @@ > -## @file > -# This module sets default policy for attributes of EfiACPIMemoryNVS and > EfiReservedMemoryType. > -# > -# This module sets EFI_MEMORY_XP for attributes of EfiACPIMemoryNVS and > EfiReservedMemoryType > -# in UEFI memory map, if and only of PropertiesTable is published and ha= s BIT0 > set. > -# > -# Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.
> -# > -# This program and the accompanying materials > -# are licensed and made available under the terms and conditions of the= BSD > License > -# which accompanies this distribution. The full text of the license may= be found > at > -# http://opensource.org/licenses/bsd-license.php > -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" > BASIS, > -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER > EXPRESS OR IMPLIED. > -# > -# > -## > - > -[Defines] > - INF_VERSION =3D 0x00010005 > - BASE_NAME =3D PropertiesTableAttributesDxe > - MODULE_UNI_FILE =3D PropertiesTableAttributesDxe.uni > - FILE_GUID =3D AA48FBB2-9F87-4DFD-B416-575938F0C8F= 4 > - MODULE_TYPE =3D DXE_DRIVER > - VERSION_STRING =3D 1.0 > - ENTRY_POINT =3D InitializePropertiesTableAttributes= Dxe > - > -# > -# The following information is for reference only and not required by th= e build > tools. > -# > -# VALID_ARCHITECTURES =3D IA32 X64 EBC > -# > - > -[Sources] > - PropertiesTableAttributesDxe.c > - > -[Packages] > - MdePkg/MdePkg.dec > - > -[LibraryClasses] > - UefiDriverEntryPoint > - UefiBootServicesTableLib > - DxeServicesTableLib > - DebugLib > - UefiLib > - MemoryAllocationLib > - > -[Guids] > - gEfiEventReadyToBootGuid ## CONSUMES ## Event > - gEfiPropertiesTableGuid ## CONSUMES ## SystemTab= le > - > -[Depex] > - TRUE > - > -[UserExtensions.TianoCore."ExtraFiles"] > - PropertiesTableAttributesDxeExtra.uni > diff --git > a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttr= i > butesDxe.uni > b/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttr= i > butesDxe.uni > deleted file mode 100644 > index 9df097f7ce..0000000000 > --- > a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttr= i > butesDxe.uni > +++ /dev/null > @@ -1,23 +0,0 @@ > -// /** @file > -// This module sets default policy for attributes of EfiACPIMemoryNVS a= nd > EfiReservedMemoryType. > -// > -// This module sets EFI_MEMORY_XP for attributes of EfiACPIMemoryNVS an= d > EfiReservedMemoryType > -// in UEFI memory map, if and only of PropertiesTable is published and = has > BIT0 set. > -// > -// Copyright (c) 2015, Intel Corporation. All rights reserved.
> -// > -// This program and the accompanying materials > -// are licensed and made available under the terms and conditions of the= BSD > License > -// which accompanies this distribution. The full text of the license ma= y be > found at > -// http://opensource.org/licenses/bsd-license.php > -// > -// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" > BASIS, > -// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER > EXPRESS OR IMPLIED. > -// > -// **/ > - > - > -#string STR_MODULE_ABSTRACT #language en-US "This module set= s > default policy for attributes of EfiACPIMemoryNVS and > EfiReservedMemoryType." > - > -#string STR_MODULE_DESCRIPTION #language en-US "This module set= s > EFI_MEMORY_XP for attributes of EfiACPIMemoryNVS and > EfiReservedMemoryType in UEFI memory map, if and only of PropertiesTable = is > published and has BIT0 set." > - > diff --git > a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttr= i > butesDxeExtra.uni > b/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttr= i > butesDxeExtra.uni > deleted file mode 100644 > index e107e78523..0000000000 > --- > a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttr= i > butesDxeExtra.uni > +++ /dev/null > @@ -1,23 +0,0 @@ > -// /** @file > -// This module sets default policy for attributes of EfiACPIMemoryNVS a= nd > EfiReservedMemoryType. > -// > -// This module sets EFI_MEMORY_XP for attributes of EfiACPIMemoryNVS an= d > EfiReservedMemoryType > -// in UEFI memory map, if and only of PropertiesTable is published and = has > BIT0 set. > -// > -// Copyright (c) 2015, Intel Corporation. All rights reserved.
> -// > -// This program and the accompanying materials > -// are licensed and made available under the terms and conditions of the= BSD > License > -// which accompanies this distribution. The full text of the license ma= y be > found at > -// http://opensource.org/licenses/bsd-license.php > -// > -// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" > BASIS, > -// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER > EXPRESS OR IMPLIED. > -// > -// **/ > - > -#string STR_PROPERTIES_MODULE_NAME > -#language en-US > -"PropertiesTable Attributes Setting DXE Driver" > - > - > -- > 2.18.0.windows.1