[PATCH 1/1] OvmfPkg: Reserve the Ovmf work area as RT_DATA
Min Xu
From: Min M Xu <min.m.xu@...>
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3974 Ovmf work-area (PcdOvmfWorkArea) was designed to store the Confidential Computing guest information, including the CC guest type. This information will be probed by CcProbeLib so that the CC guest type can be determined in run-time. But the Ovmf work-area was reserved as BT_Data so that it cannot be accessed after ExitBootService. Please see the detailed analysis in BZ#3974. RH also reports a similar bug. Please see: https://bugzilla.redhat.com/show_bug.cgi?id=2114858 This patch reserves the work-area as RT_Data to fix this bug. Cc: Erdem Aktas <erdemaktas@...> Cc: James Bottomley <jejb@...> Cc: Jiewen Yao <jiewen.yao@...> Cc: Gerd Hoffmann <kraxel@...> Cc: Tom Lendacky <thomas.lendacky@...> Signed-off-by: Min Xu <min.m.xu@...> --- OvmfPkg/Library/PlatformInitLib/IntelTdx.c | 2 +- OvmfPkg/Library/PlatformInitLib/MemDetect.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/OvmfPkg/Library/PlatformInitLib/IntelTdx.c b/OvmfPkg/Library/PlatformInitLib/IntelTdx.c index c6d7c8bb6e0e..286f447fea03 100644 --- a/OvmfPkg/Library/PlatformInitLib/IntelTdx.c +++ b/OvmfPkg/Library/PlatformInitLib/IntelTdx.c @@ -557,7 +557,7 @@ PlatformTdxPublishRamRegions ( BuildMemoryAllocationHob ( (EFI_PHYSICAL_ADDRESS)(UINTN)FixedPcdGet32 (PcdOvmfWorkAreaBase), (UINT64)(UINTN)FixedPcdGet32 (PcdOvmfWorkAreaSize), - EfiBootServicesData + EfiRuntimeServicesData ); } } diff --git a/OvmfPkg/Library/PlatformInitLib/MemDetect.c b/OvmfPkg/Library/PlatformInitLib/MemDetect.c index 942eaf89cfcf..83fc061fcbac 100644 --- a/OvmfPkg/Library/PlatformInitLib/MemDetect.c +++ b/OvmfPkg/Library/PlatformInitLib/MemDetect.c @@ -1022,7 +1022,7 @@ PlatformQemuInitializeRamForS3 ( BuildMemoryAllocationHob ( (EFI_PHYSICAL_ADDRESS)(UINTN)FixedPcdGet32 (PcdOvmfWorkAreaBase), (UINT64)(UINTN)FixedPcdGet32 (PcdOvmfWorkAreaSize), - PlatformInfoHob->S3Supported ? EfiACPIMemoryNVS : EfiBootServicesData + PlatformInfoHob->S3Supported ? EfiACPIMemoryNVS : EfiRuntimeServicesData ); } -- 2.29.2.windows.2 |
|