edk2/MdeModulePkg/Core/Dxe
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
..
Dispatcher MdeModulePkg: Update performance measurements to use new perf macros 2026-03-17 02:38:07 +00:00
DxeMain MdeModulePkg: Always Initialize Separate Exception Stacks 2025-10-23 00:57:59 +00:00
Event MdeModulePkg: Replace include guards with #pragma once 2026-02-23 21:01:28 +00:00
FwVol MdeModulePkg: Replace include guards with #pragma once 2026-02-23 21:01:28 +00:00
FwVolBlock MdeModulePkg: Replace include guards with #pragma once 2026-02-23 21:01:28 +00:00
Gcd MdeModulePkg: Replace include guards with #pragma once 2026-02-23 21:01:28 +00:00
Hand MdeModulePkg/Core: Validate DXE event signature before usage 2026-03-23 18:43:11 +00:00
Image MdeModulePkg: Replace include guards with #pragma once 2026-02-23 21:01:28 +00:00
Library MdeModulePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
Mem MdeModulePkg: Don't Allow Guard Pages to Cross Bin Boundaries 2026-04-23 02:42:12 +00:00
Misc MdeModulePkg: Fix missing NULL tests. 2025-11-22 18:58:47 +00:00
SectionExtraction MdeModulePkg: Fix missing NULL tests. 2025-11-22 18:58:47 +00:00
DxeCore.uni MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
DxeCoreExtra.uni MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
DxeMain.h MdeModulePkg: Replace include guards with #pragma once 2026-02-23 21:01:28 +00:00
DxeMain.inf MdeModulePkg: Leak Memory if Not RW on FreePages 2025-07-09 00:59:56 +00:00