From 30c8f8616d9f2c764e4b8c3566bef4f562115005 Mon Sep 17 00:00:00 2001 From: qhuang8 Date: Thu, 8 Nov 2007 03:57:04 +0000 Subject: PI spec will be updated to make it clear that this HOB should describe the stack range before going to DXE. Therefore, we should update stack Hob in DxeLoad to reflect real stack git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4290 6f19259b-4bc3-4df7-8a09-765794883524 --- MdeModulePkg/Core/DxeIplPeim/Ia32/DxeLoadFunc.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'MdeModulePkg/Core/DxeIplPeim/Ia32') diff --git a/MdeModulePkg/Core/DxeIplPeim/Ia32/DxeLoadFunc.c b/MdeModulePkg/Core/DxeIplPeim/Ia32/DxeLoadFunc.c index 129b05516d..867c771bc4 100644 --- a/MdeModulePkg/Core/DxeIplPeim/Ia32/DxeLoadFunc.c +++ b/MdeModulePkg/Core/DxeIplPeim/Ia32/DxeLoadFunc.c @@ -106,6 +106,10 @@ HandOffToDxeCore ( AsmWriteCr3 (PageTables); + // + // Update the contents of BSP stack HOB to reflect the real stack info passed to DxeCore. + // + UpdateStackHob (BaseOfStack, STACK_SIZE); if (FeaturePcdGet (PcdDxeIplEnableIdt)) { SizeOfTemplate = AsmGetVectorTemplatInfo (&TemplateBase); @@ -163,6 +167,11 @@ HandOffToDxeCore ( Status = PeiServicesInstallPpi (EndOfPeiSignal); ASSERT_EFI_ERROR (Status); + // + // Update the contents of BSP stack HOB to reflect the real stack info passed to DxeCore. + // + UpdateStackHob (BaseOfStack, STACK_SIZE); + SwitchStack ( (SWITCH_STACK_ENTRY_POINT)(UINTN)DxeCoreEntryPoint, HobList.Raw, -- cgit v1.2.3