X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=EdkNt32Pkg%2FSec%2FSecMain.c;h=4f668b1bc8553ba3d7bd11cb11e8156006247546;hp=167ad500118312ac96de5c2123582b993c99a038;hb=5d01b0f7046dc698e66019d78c9143f0f3702382;hpb=35b309d6a956f9bc5c50b8b59ce578f3925c90d7 diff --git a/EdkNt32Pkg/Sec/SecMain.c b/EdkNt32Pkg/Sec/SecMain.c index 167ad50011..4f668b1bc8 100644 --- a/EdkNt32Pkg/Sec/SecMain.c +++ b/EdkNt32Pkg/Sec/SecMain.c @@ -601,12 +601,13 @@ Returns: // // Compute Top Of Memory for Stack and PEI Core Allocations // - TopOfMemory = LargestRegion + ((LargestRegionSize) & (~15)); + TopOfMemory = LargestRegion + LargestRegionSize; // // Allocate 128KB for the Stack // - TopOfStack = (VOID *) (UINTN) (TopOfMemory - sizeof (EFI_PEI_STARTUP_DESCRIPTOR)); + TopOfStack = (VOID *)((UINTN)TopOfMemory - sizeof (EFI_PEI_STARTUP_DESCRIPTOR) - CPU_STACK_ALIGNMENT); + TopOfStack = ALIGN_POINTER (TopOfStack, CPU_STACK_ALIGNMENT); TopOfMemory = TopOfMemory - STACK_SIZE; //