UefiCpuPkg/MpInitLib: Always use AP Create if GhcbApicIds HOB is present

BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=4654

Currently, the first time an AP is started for an SEV-SNP guest, it relies
on the VMSA as set by the hypervisor. If the list of APIC IDs has been
retrieved, this is not necessary. The list of APIC IDs will be identified
by a GUIDed HOB. If the GUIDed HOB is present, use the SEV-SNP AP Create
protocol to start the AP for the first time and each time thereafter.

Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Rahul Kumar <rahul1.kumar@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Acked-by: Ray Ni <ray.ni@intel.com>
This commit is contained in:
Tom Lendacky
2024-03-08 07:30:33 -08:00
committed by mergify[bot]
parent 8a6471819b
commit 5bdb091133
8 changed files with 133 additions and 14 deletions

View File

@@ -0,0 +1,17 @@
/** @file
APIC ID list retrieved for an SEV-ES/SEV-SNP guest via the GHCB.
Copyright (C) 2024, Advanced Micro Devices, Inc. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
#ifndef GHCB_APIC_IDS_H_
#define GHCB_APIC_IDS_H_
#define GHCB_APIC_IDS_GUID \
{ 0xbc964338, 0xee39, 0x4fc8, { 0xa2, 0x24, 0x10, 0x10, 0x8b, 0x17, 0x80, 0x1b }}
extern EFI_GUID gGhcbApicIdsGuid;
#endif