From: "Wang, Jian J" <jian.j.wang@intel.com>
To: "Zhang, Shenglei" <shenglei.zhang@intel.com>,
"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>
Cc: "Wu, Hao A" <hao.a.wu@intel.com>, "Ni, Ray" <ray.ni@intel.com>,
"Zeng, Star" <star.zeng@intel.com>
Subject: Re: [PATCH] MdeModulePkg/PropertiesTableAttributesDxe: Remove this driver
Date: Mon, 18 Feb 2019 14:15:33 +0000 [thread overview]
Message-ID: <D827630B58408649ACB04F44C5100036258B13BB@SHSMSX107.ccr.corp.intel.com> (raw)
In-Reply-To: <20190218085240.8400-1-shenglei.zhang@intel.com>
Reviewed-by: Jian J Wang <jian.j.wang@intel.com>
> -----Original Message-----
> From: Zhang, Shenglei
> Sent: Monday, February 18, 2019 4:53 PM
> To: edk2-devel@lists.01.org
> Cc: Wang, Jian J <jian.j.wang@intel.com>; Wu, Hao A <hao.a.wu@intel.com>;
> Ni, Ray <ray.ni@intel.com>; Zeng, Star <star.zeng@intel.com>
> Subject: [PATCH] MdeModulePkg/PropertiesTableAttributesDxe: Remove this
> driver
>
> 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=1475
>
> Cc: Jian J Wang <jian.j.wang@intel.com>
> Cc: Hao Wu <hao.a.wu@intel.com>
> Cc: Ray Ni <ray.ni@intel.com>
> Cc: Star Zeng <star.zeng@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com>
> ---
> 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/PropertiesTableAttribu
> tesDxe.c
> delete mode 100644
> MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttribu
> tesDxe.inf
> delete mode 100644
> MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttribu
> tesDxe.uni
> delete mode 100644
> MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttribu
> tesDxeExtra.uni
>
> 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
>
> -
> MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttribu
> tesDxe.inf
> MdeModulePkg/Universal/FileExplorerDxe/FileExplorerDxe.inf {
> <LibraryClasses>
> FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
> diff --git
> a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttri
> butesDxe.c
> b/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttri
> butesDxe.c
> deleted file mode 100644
> index 4d1a46f64c..0000000000
> ---
> a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttri
> 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 has BIT0
> set.
> -
> -Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.<BR>
> -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.
> -
> -**/
> -
> -#include <Uefi.h>
> -#include <Library/DebugLib.h>
> -#include <Library/UefiBootServicesTableLib.h>
> -#include <Library/DxeServicesTableLib.h>
> -#include <Library/UefiLib.h>
> -#include <Library/MemoryAllocationLib.h>
> -#include <Guid/EventGroup.h>
> -#include <Guid/PropertiesTable.h>
> -
> -/**
> - 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 places
> 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 = MemoryMap;
> - MemoryMapEnd = (EFI_MEMORY_DESCRIPTOR *) ((UINT8 *) MemoryMap +
> MemoryMapSize);
> - while ((UINTN)MemoryMapEntry < (UINTN)MemoryMapEnd) {
> - if (MemoryMapEntry->PhysicalStart < BASE_1MB) {
> - //
> - // Do not touch memory space below 1MB
> - //
> - MemoryMapEntry = 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 there
> might be firmware executable there.
> - //
> - DEBUG ((EFI_D_INFO, "SetMemorySpaceAttributes - %016lx - %016lx
> (%016lx) ...\n",
> - MemoryMapEntry->PhysicalStart,
> - MemoryMapEntry->PhysicalStart + EfiPagesToSize (MemoryMapEntry-
> >NumberOfPages),
> - MemoryMapEntry->Attribute
> - ));
> - Status = gDS->SetMemorySpaceCapabilities (
> - MemoryMapEntry->PhysicalStart,
> - EfiPagesToSize (MemoryMapEntry->NumberOfPages),
> - MemoryMapEntry->Attribute | EFI_MEMORY_XP
> - );
> - DEBUG ((EFI_D_INFO, "SetMemorySpaceCapabilities - %r\n", Status));
> - break;
> - }
> -
> - MemoryMapEntry = 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 Event.
> -**/
> -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 = EfiGetSystemConfigurationTable (&gEfiPropertiesTableGuid, (VOID **)
> &PropertiesTable);
> - if (EFI_ERROR (Status)) {
> - goto Done;
> - }
> -
> - ASSERT (PropertiesTable != NULL);
> -
> - DEBUG ((EFI_D_INFO, "MemoryProtectionAttribute - 0x%016lx\n",
> PropertiesTable->MemoryProtectionAttribute));
> - if ((PropertiesTable->MemoryProtectionAttribute &
> EFI_PROPERTIES_RUNTIME_MEMORY_PROTECTION_NON_EXECUTABLE_PE_D
> ATA) == 0) {
> - goto Done;
> - }
> -
> - //
> - // Get the EFI memory map.
> - //
> - MemoryMapSize = 0;
> - MemoryMap = NULL;
> - Status = gBS->GetMemoryMap (
> - &MemoryMapSize,
> - MemoryMap,
> - &MapKey,
> - &DescriptorSize,
> - &DescriptorVersion
> - );
> - ASSERT (Status == EFI_BUFFER_TOO_SMALL);
> - do {
> - MemoryMap = (EFI_MEMORY_DESCRIPTOR *) AllocatePool
> (MemoryMapSize);
> - ASSERT (MemoryMap != NULL);
> - Status = gBS->GetMemoryMap (
> - &MemoryMapSize,
> - MemoryMap,
> - &MapKey,
> - &DescriptorSize,
> - &DescriptorVersion
> - );
> - if (EFI_ERROR (Status)) {
> - FreePool (MemoryMap);
> - }
> - } while (Status == 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 = gBS->CreateEventEx (
> - EVT_NOTIFY_SIGNAL,
> - TPL_CALLBACK,
> - UpdateMemoryAttributesDefault,
> - NULL,
> - &gEfiEventReadyToBootGuid,
> - &ReadyToBootEvent
> - );
> - ASSERT_EFI_ERROR (Status);
> -
> - return EFI_SUCCESS;
> -}
> diff --git
> a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttri
> butesDxe.inf
> b/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttri
> butesDxe.inf
> deleted file mode 100644
> index a8edf854bb..0000000000
> ---
> a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttri
> 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 has BIT0
> set.
> -#
> -# Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.<BR>
> -#
> -# 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 = 0x00010005
> - BASE_NAME = PropertiesTableAttributesDxe
> - MODULE_UNI_FILE = PropertiesTableAttributesDxe.uni
> - FILE_GUID = AA48FBB2-9F87-4DFD-B416-575938F0C8F4
> - MODULE_TYPE = DXE_DRIVER
> - VERSION_STRING = 1.0
> - ENTRY_POINT = InitializePropertiesTableAttributesDxe
> -
> -#
> -# The following information is for reference only and not required by the build
> tools.
> -#
> -# VALID_ARCHITECTURES = IA32 X64 EBC
> -#
> -
> -[Sources]
> - PropertiesTableAttributesDxe.c
> -
> -[Packages]
> - MdePkg/MdePkg.dec
> -
> -[LibraryClasses]
> - UefiDriverEntryPoint
> - UefiBootServicesTableLib
> - DxeServicesTableLib
> - DebugLib
> - UefiLib
> - MemoryAllocationLib
> -
> -[Guids]
> - gEfiEventReadyToBootGuid ## CONSUMES ## Event
> - gEfiPropertiesTableGuid ## CONSUMES ## SystemTable
> -
> -[Depex]
> - TRUE
> -
> -[UserExtensions.TianoCore."ExtraFiles"]
> - PropertiesTableAttributesDxeExtra.uni
> diff --git
> a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttri
> butesDxe.uni
> b/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttri
> butesDxe.uni
> deleted file mode 100644
> index 9df097f7ce..0000000000
> ---
> a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttri
> butesDxe.uni
> +++ /dev/null
> @@ -1,23 +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 has
> BIT0 set.
> -//
> -// Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
> -//
> -// 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.
> -//
> -// **/
> -
> -
> -#string STR_MODULE_ABSTRACT #language en-US "This module sets
> default policy for attributes of EfiACPIMemoryNVS and
> EfiReservedMemoryType."
> -
> -#string STR_MODULE_DESCRIPTION #language en-US "This module sets
> 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/PropertiesTableAttri
> butesDxeExtra.uni
> b/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttri
> butesDxeExtra.uni
> deleted file mode 100644
> index e107e78523..0000000000
> ---
> a/MdeModulePkg/Universal/PropertiesTableAttributesDxe/PropertiesTableAttri
> butesDxeExtra.uni
> +++ /dev/null
> @@ -1,23 +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 has
> BIT0 set.
> -//
> -// Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
> -//
> -// 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.
> -//
> -// **/
> -
> -#string STR_PROPERTIES_MODULE_NAME
> -#language en-US
> -"PropertiesTable Attributes Setting DXE Driver"
> -
> -
> --
> 2.18.0.windows.1
next prev parent reply other threads:[~2019-02-18 14:16 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-18 8:52 [PATCH] MdeModulePkg/PropertiesTableAttributesDxe: Remove this driver Shenglei Zhang
2019-02-18 14:15 ` Wang, Jian J [this message]
2019-02-18 14:22 ` Zeng, Star
2019-02-19 3:38 ` Ni, Ray
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=D827630B58408649ACB04F44C5100036258B13BB@SHSMSX107.ccr.corp.intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox