audk/OvmfPkg/PlatformPei
Tom Lendacky 3b49d0a598 OvmfPkg: Move the GHCB allocations into reserved memory
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=2198

After having transitioned from UEFI to the OS, the OS will need to boot
the APs. For an SEV-ES guest, the APs will have been parked by UEFI using
GHCB pages allocated by UEFI. The hypervisor will write to the GHCB
SW_EXITINFO2 field of the GHCB when the AP is booted. As a result, the
GHCB pages must be marked reserved so that the OS does not attempt to use
them and experience memory corruption because of the hypervisor write.

Change the GHCB allocation from the default boot services memory to
reserved memory.

Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Ard Biesheuvel <ard.biesheuvel@arm.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Regression-tested-by: Laszlo Ersek <lersek@redhat.com>
2020-08-17 02:46:39 +00:00
..
AmdSev.c OvmfPkg: Move the GHCB allocations into reserved memory 2020-08-17 02:46:39 +00:00
ClearCache.c OvmfPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:19 -07:00
Cmos.c OvmfPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:19 -07:00
Cmos.h OvmfPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:19 -07:00
FeatureControl.c OvmfPkg: replace old EFI_D_ debug levels with new DEBUG_ ones 2020-04-30 13:01:16 +00:00
Fv.c OvmfPkg: replace old EFI_D_ debug levels with new DEBUG_ ones 2020-04-30 13:01:16 +00:00
MemDetect.c OvmfPkg/PlatformPei: Reserve SEV-ES work area if S3 is supported 2020-08-17 02:46:39 +00:00
MemTypeInfo.c OvmfPkg/PlatformPei: extract memory type info defaults to PCDs 2020-05-18 15:48:48 +00:00
Platform.c OvmfPkg: replace old EFI_D_ debug levels with new DEBUG_ ones 2020-04-30 13:01:16 +00:00
Platform.h OvmfPkg: improve SMM comms security with adaptive MemoryTypeInformation 2020-03-12 21:14:46 +00:00
PlatformPei.inf OvmfPkg/PlatformPei: Reserve SEV-ES work area if S3 is supported 2020-08-17 02:46:39 +00:00
Xen.c OvmfPkg: replace old EFI_D_ debug levels with new DEBUG_ ones 2020-04-30 13:01:16 +00:00
Xen.h OvmfPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:19 -07:00