[edk2-devel] [PATCH] MdeModulePkg/PiSmmCore: Drop deprecated image profiling commands

Ni, Ray ray.ni at intel.com
Mon Aug 9 04:23:35 UTC 2021


Reviewed-by: Ray Ni <ray.ni at intel.com>

+Star and Jiewen for confirmation.

-----Original Message-----
From: Marvin Häuser <mhaeuser at posteo.de> 
Sent: Monday, August 9, 2021 3:40 AM
To: devel at edk2.groups.io
Cc: Wang, Jian J <jian.j.wang at intel.com>; Wu, Hao A <hao.a.wu at intel.com>; Dong, Eric <eric.dong at intel.com>; Ni, Ray <ray.ni at intel.com>; Vitaly Cheptsov <vit9696 at protonmail.com>
Subject: [PATCH] MdeModulePkg/PiSmmCore: Drop deprecated image profiling commands

The legacy codebase allowed SMM images to be registered for profiling
from DXE. Support for this has been dropped entirely, so remove the
remaining handlers.

Cc: Jian J Wang <jian.j.wang at intel.com>
Cc: Hao A Wu <hao.a.wu at intel.com>
Cc: Eric Dong <eric.dong at intel.com>
Cc: Ray Ni <ray.ni at intel.com>
Cc: Vitaly Cheptsov <vit9696 at protonmail.com>
Signed-off-by: Marvin Häuser <mhaeuser at posteo.de>
---
 MdeModulePkg/Core/PiSmmCore/SmramProfileRecord.c | 80 --------------------
 MdeModulePkg/Include/Guid/MemoryProfile.h        |  5 --
 2 files changed, 85 deletions(-)

diff --git a/MdeModulePkg/Core/PiSmmCore/SmramProfileRecord.c b/MdeModulePkg/Core/PiSmmCore/SmramProfileRecord.c
index 1b302c810cc9..7316df7531fd 100644
--- a/MdeModulePkg/Core/PiSmmCore/SmramProfileRecord.c
+++ b/MdeModulePkg/Core/PiSmmCore/SmramProfileRecord.c
@@ -2232,64 +2232,6 @@ Done:
   mSmramProfileGettingStatus = SmramProfileGettingStatus;

 }

 

-/**

-  SMRAM profile handler to register SMM image.

-

-  @param SmramProfileParameterRegisterImage The parameter of SMM profile register image.

-

-**/

-VOID

-SmramProfileHandlerRegisterImage (

-  IN SMRAM_PROFILE_PARAMETER_REGISTER_IMAGE *SmramProfileParameterRegisterImage

-  )

-{

-  EFI_STATUS                        Status;

-  EFI_SMM_DRIVER_ENTRY              DriverEntry;

-  VOID                              *EntryPointInImage;

-

-  ZeroMem (&DriverEntry, sizeof (DriverEntry));

-  CopyMem (&DriverEntry.FileName, &SmramProfileParameterRegisterImage->FileName, sizeof(EFI_GUID));

-  DriverEntry.ImageBuffer = SmramProfileParameterRegisterImage->ImageBuffer;

-  DriverEntry.NumberOfPage = (UINTN) SmramProfileParameterRegisterImage->NumberOfPage;

-  Status = InternalPeCoffGetEntryPoint ((VOID *) (UINTN) DriverEntry.ImageBuffer, &EntryPointInImage);

-  ASSERT_EFI_ERROR (Status);

-  DriverEntry.ImageEntryPoint = (PHYSICAL_ADDRESS) (UINTN) EntryPointInImage;

-

-  Status = RegisterSmramProfileImage (&DriverEntry, FALSE);

-  if (!EFI_ERROR (Status)) {

-    SmramProfileParameterRegisterImage->Header.ReturnStatus = 0;

-  }

-}

-

-/**

-  SMRAM profile handler to unregister SMM image.

-

-  @param SmramProfileParameterUnregisterImage The parameter of SMM profile unregister image.

-

-**/

-VOID

-SmramProfileHandlerUnregisterImage (

-  IN SMRAM_PROFILE_PARAMETER_UNREGISTER_IMAGE *SmramProfileParameterUnregisterImage

-  )

-{

-  EFI_STATUS                        Status;

-  EFI_SMM_DRIVER_ENTRY              DriverEntry;

-  VOID                              *EntryPointInImage;

-

-  ZeroMem (&DriverEntry, sizeof (DriverEntry));

-  CopyMem (&DriverEntry.FileName, &SmramProfileParameterUnregisterImage->FileName, sizeof (EFI_GUID));

-  DriverEntry.ImageBuffer = SmramProfileParameterUnregisterImage->ImageBuffer;

-  DriverEntry.NumberOfPage = (UINTN) SmramProfileParameterUnregisterImage->NumberOfPage;

-  Status = InternalPeCoffGetEntryPoint ((VOID *) (UINTN) DriverEntry.ImageBuffer, &EntryPointInImage);

-  ASSERT_EFI_ERROR (Status);

-  DriverEntry.ImageEntryPoint = (PHYSICAL_ADDRESS) (UINTN) EntryPointInImage;

-

-  Status = UnregisterSmramProfileImage (&DriverEntry, FALSE);

-  if (!EFI_ERROR (Status)) {

-    SmramProfileParameterUnregisterImage->Header.ReturnStatus = 0;

-  }

-}

-

 /**

   Dispatch function for a Software SMI handler.

 

@@ -2374,28 +2316,6 @@ SmramProfileHandler (
     }

     SmramProfileHandlerGetDataByOffset ((SMRAM_PROFILE_PARAMETER_GET_PROFILE_DATA_BY_OFFSET *) (UINTN) CommBuffer);

     break;

-  case SMRAM_PROFILE_COMMAND_REGISTER_IMAGE:

-    DEBUG ((EFI_D_ERROR, "SmramProfileHandlerRegisterImage\n"));

-    if (TempCommBufferSize != sizeof (SMRAM_PROFILE_PARAMETER_REGISTER_IMAGE)) {

-      DEBUG ((EFI_D_ERROR, "SmramProfileHandler: SMM communication buffer size invalid!\n"));

-      return EFI_SUCCESS;

-    }

-    if (mSmramReadyToLock) {

-      return EFI_SUCCESS;

-    }

-    SmramProfileHandlerRegisterImage ((SMRAM_PROFILE_PARAMETER_REGISTER_IMAGE *) (UINTN) CommBuffer);

-    break;

-  case SMRAM_PROFILE_COMMAND_UNREGISTER_IMAGE:

-    DEBUG ((EFI_D_ERROR, "SmramProfileHandlerUnregisterImage\n"));

-    if (TempCommBufferSize != sizeof (SMRAM_PROFILE_PARAMETER_UNREGISTER_IMAGE)) {

-      DEBUG ((EFI_D_ERROR, "SmramProfileHandler: SMM communication buffer size invalid!\n"));

-      return EFI_SUCCESS;

-    }

-    if (mSmramReadyToLock) {

-      return EFI_SUCCESS;

-    }

-    SmramProfileHandlerUnregisterImage ((SMRAM_PROFILE_PARAMETER_UNREGISTER_IMAGE *) (UINTN) CommBuffer);

-    break;

   case SMRAM_PROFILE_COMMAND_GET_RECORDING_STATE:

     DEBUG ((EFI_D_ERROR, "SmramProfileHandlerGetRecordingState\n"));

     if (TempCommBufferSize != sizeof (SMRAM_PROFILE_PARAMETER_RECORDING_STATE)) {

diff --git a/MdeModulePkg/Include/Guid/MemoryProfile.h b/MdeModulePkg/Include/Guid/MemoryProfile.h
index eee3b9125240..92cd1e7cf493 100644
--- a/MdeModulePkg/Include/Guid/MemoryProfile.h
+++ b/MdeModulePkg/Include/Guid/MemoryProfile.h
@@ -388,11 +388,6 @@ struct _EDKII_MEMORY_PROFILE_PROTOCOL {
 //

 #define SMRAM_PROFILE_COMMAND_GET_PROFILE_INFO           0x1

 #define SMRAM_PROFILE_COMMAND_GET_PROFILE_DATA           0x2

-//

-// Below 2 commands are now used by ECP only and only valid before SmmReadyToLock

-//

-#define SMRAM_PROFILE_COMMAND_REGISTER_IMAGE             0x3

-#define SMRAM_PROFILE_COMMAND_UNREGISTER_IMAGE           0x4

 

 #define SMRAM_PROFILE_COMMAND_GET_PROFILE_DATA_BY_OFFSET 0x5

 #define SMRAM_PROFILE_COMMAND_GET_RECORDING_STATE        0x6

-- 
2.31.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#78916): https://edk2.groups.io/g/devel/message/78916
Mute This Topic: https://groups.io/mt/84754058/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-






More information about the edk2-devel-archive mailing list