From: Tom Lendacky <[email protected]> The AP reset vector stack allocation is only required if running as an SEV-ES guest. Since the reset vector allocation is below 1MB in memory, eliminate the requirement for bare-metal systems and non SEV-ES guests to allocate the extra stack area, which can be large if the PcdCpuMaxLogicalProcessorNumber value is large.
Cc: Garrett Kirkendall <[email protected]> Signed-off-by: Tom Lendacky <[email protected]> --- UefiCpuPkg/Library/MpInitLib/MpLib.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/UefiCpuPkg/Library/MpInitLib/MpLib.c b/UefiCpuPkg/Library/MpInitLib/MpLib.c index 07426274f639..39af2f9fba7d 100644 --- a/UefiCpuPkg/Library/MpInitLib/MpLib.c +++ b/UefiCpuPkg/Library/MpInitLib/MpLib.c @@ -1152,7 +1152,15 @@ GetApResetStackSize ( VOID ) { - return AP_RESET_STACK_SIZE * PcdGet32(PcdCpuMaxLogicalProcessorNumber); + // + // The AP reset stack is only used by SEV-ES guests. Don't add to the + // allocation if not necessary. + // + if (PcdGetBool (PcdSevEsIsEnabled) == TRUE) { + return AP_RESET_STACK_SIZE * PcdGet32(PcdCpuMaxLogicalProcessorNumber); + } else { + return 0; + } } /** -- 2.28.0 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#65471): https://edk2.groups.io/g/devel/message/65471 Mute This Topic: https://groups.io/mt/77021282/21656 Group Owner: [email protected] Unsubscribe: https://edk2.groups.io/g/devel/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
