Another temporary change to support the persistence of the MH. The Mp buffer needs to be allocated as runtime memory or it may be overwritten by the OS.
Signed-off-by: Tobin Feldman-Fitzthum <to...@linux.ibm.com> --- UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf | 2 ++ UefiCpuPkg/Library/MpInitLib/MpLib.c | 7 ++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf b/UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf index 34abf25d43..0b26cf6aaf 100644 --- a/UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf +++ b/UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf @@ -39,6 +39,7 @@ MdePkg/MdePkg.dec UefiCpuPkg/UefiCpuPkg.dec MdeModulePkg/MdeModulePkg.dec + OvmfPkg/OvmfPkg.dec [LibraryClasses] BaseLib @@ -65,6 +66,7 @@ gUefiCpuPkgTokenSpaceGuid.PcdSevEsIsEnabled ## CONSUMES gUefiCpuPkgTokenSpaceGuid.PcdSevEsWorkAreaBase ## SOMETIMES_CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdGhcbBase ## CONSUMES + gUefiOvmfPkgTokenSpaceGuid.PcdStartConfidentialMigrationHandler [Ppis] gEdkiiPeiShadowMicrocodePpiGuid ## SOMETIMES_CONSUMES diff --git a/UefiCpuPkg/Library/MpInitLib/MpLib.c b/UefiCpuPkg/Library/MpInitLib/MpLib.c index 2568986d8c..0ca2858ca3 100644 --- a/UefiCpuPkg/Library/MpInitLib/MpLib.c +++ b/UefiCpuPkg/Library/MpInitLib/MpLib.c @@ -1974,7 +1974,12 @@ MpInitLibInitialize ( BufferSize += VolatileRegisters.Idtr.Limit + 1; BufferSize += sizeof (CPU_MP_DATA); BufferSize += (sizeof (CPU_AP_DATA) + sizeof (CPU_INFO_IN_HOB))* MaxLogicalProcessorNumber; - MpBuffer = AllocatePages (EFI_SIZE_TO_PAGES (BufferSize)); + if (PcdGetBool (PcdStartConfidentialMigrationHandler)) { + MpBuffer = AllocateRuntimePages (EFI_SIZE_TO_PAGES (BufferSize)); + } + else { + MpBuffer = AllocatePages (EFI_SIZE_TO_PAGES (BufferSize)); + } ASSERT (MpBuffer != NULL); ZeroMem (MpBuffer, BufferSize); Buffer = (UINTN) MpBuffer; -- 2.20.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#72359): https://edk2.groups.io/g/devel/message/72359 Mute This Topic: https://groups.io/mt/81036374/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-