Thank you very much!! Reviewed-by: Ray Ni <ray...@intel.com>
I will merge your patches after stable tag release. > -----Original Message----- > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Marvin Häuser > Sent: Monday, August 9, 2021 2:09 PM > To: devel@edk2.groups.io > Cc: Wang, Jian J <jian.j.w...@intel.com>; Wu, Hao A <hao.a...@intel.com>; > Dong, Eric <eric.d...@intel.com>; Ni, Ray > <ray...@intel.com>; Vitaly Cheptsov <vit9...@protonmail.com> > Subject: [edk2-devel] [PATCH v2 1/1] 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.w...@intel.com> > Cc: Hao A Wu <hao.a...@intel.com> > Cc: Eric Dong <eric.d...@intel.com> > Cc: Ray Ni <ray...@intel.com> > Cc: Vitaly Cheptsov <vit9...@protonmail.com> > Signed-off-by: Marvin Häuser <mhaeu...@posteo.de> > --- > MdeModulePkg/Core/PiSmmCore/SmramProfileRecord.c | 89 ++------------------ > MdeModulePkg/Include/Guid/MemoryProfile.h | 6 +- > 2 files changed, 12 insertions(+), 83 deletions(-) > > diff --git a/MdeModulePkg/Core/PiSmmCore/SmramProfileRecord.c > b/MdeModulePkg/Core/PiSmmCore/SmramProfileRecord.c > index 1b302c810cc9..9d6e3bf27aca 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)) { > > @@ -2417,6 +2337,15 @@ SmramProfileHandler ( > ParameterRecordingState->Header.ReturnStatus = 0; > > break; > > > > + // > > + // Below 2 commands have been deprecated. They may not be (re-)used. > > + // > > + case SMRAM_PROFILE_COMMAND_DEPRECATED1: > > + case SMRAM_PROFILE_COMMAND_DEPRECATED2: > > + ASSERT (FALSE); > > + // > > + // Fall-through to the default (unrecognized command) case. > > + // > > default: > > break; > > } > > diff --git a/MdeModulePkg/Include/Guid/MemoryProfile.h > b/MdeModulePkg/Include/Guid/MemoryProfile.h > index eee3b9125240..7565e68b5c33 100644 > --- a/MdeModulePkg/Include/Guid/MemoryProfile.h > +++ b/MdeModulePkg/Include/Guid/MemoryProfile.h > @@ -389,10 +389,10 @@ 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 > > +// Below 2 commands have been deprecated. They may not be re-used. > > // > > -#define SMRAM_PROFILE_COMMAND_REGISTER_IMAGE 0x3 > > -#define SMRAM_PROFILE_COMMAND_UNREGISTER_IMAGE 0x4 > > +#define SMRAM_PROFILE_COMMAND_DEPRECATED1 0x3 > > +#define SMRAM_PROFILE_COMMAND_DEPRECATED2 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 (#79002): https://edk2.groups.io/g/devel/message/79002 Mute This Topic: https://groups.io/mt/84762964/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-