edk2/MdeModulePkg/Core
Oliver Smith-Denny 0f2dc75587 MdeModulePkg: Don't Allow Guard Pages to Cross Bin Boundaries
Currently, the DXE page allocator does not ensure that guard
page allocations stay within the bin that it is attempting to
allocate within. As a result, S4 resume is jeopardized by
bins expanding due to guard pages, either into other bins or
out of bins. This is caught by a new assert in CoreGetMemoryMap()
to ensure the bins are correct.

This fixes this by changing the internal heap guard API to return
the adjusted size and start address of a proposed allocation. The
page allocator then can ensure that the adjusted allocation still
fits within the bin it is attempting to allocate within; if not,
it will search for another descriptor.

Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2026-04-23 02:42:12 +00:00
..
Dxe MdeModulePkg: Don't Allow Guard Pages to Cross Bin Boundaries 2026-04-23 02:42:12 +00:00
DxeIplPeim MdeModulePkg: DxeIpl IA32: Use 256 IDT Entries 2026-03-07 03:58:40 +00:00
Pei MdeModulePkg/PeiCore: Accept MemoryDiscoveredPpi from SecCore 2026-03-19 02:02:47 +00:00
PiSmmCore MdeModulePkg/Core: Move SMI depth tracker below SMI presence check 2026-02-27 06:09:41 +00:00
RuntimeDxe MdeModulePkg: Replace include guards with #pragma once 2026-02-23 21:01:28 +00:00