Branch: refs/heads/master
  Home:   https://github.com/tianocore/edk2
  Commit: b2c33619f76fc3aff547db9ee410c8f91da8395a
      
https://github.com/tianocore/edk2/commit/b2c33619f76fc3aff547db9ee410c8f91da8395a
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    M MdeModulePkg/Core/Dxe/DxeMain.h
    M MdeModulePkg/Core/Dxe/Gcd/Gcd.c
    M MdeModulePkg/Core/Dxe/Mem/Page.c

  Log Message:
  -----------
  MdeModulePkg: Dxe Core: Update Bin Size Helper Fn

In preparation for sharing memory bin logic between
PEI and DXE, update CaclulateTotalMemoryBinSizeNeeded()
to take gMemoryTypeInformation by reference.

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: d77628d4c1bf410eb86c5994389a19d9f43de197
      
https://github.com/tianocore/edk2/commit/d77628d4c1bf410eb86c5994389a19d9f43de197
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    M MdeModulePkg/Core/Dxe/Gcd/Gcd.c

  Log Message:
  -----------
  MdeModulePkg: DxeCore: Create PopulateMemoryTypeInformation Helper

In preparation for supporting shared memory bin logic in DXE
and PEI, create a PopulateMemoryTypeInformation() helper function.
This function searches for a Memory Type Information Hob and
populates an EFI_MEMORY_TYPE_INFORMATION struct with it.

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: 1c8c92b7cc24be5f88b2685b87371facba9bd8ac
      
https://github.com/tianocore/edk2/commit/1c8c92b7cc24be5f88b2685b87371facba9bd8ac
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    M MdeModulePkg/Core/Dxe/Gcd/Gcd.c

  Log Message:
  -----------
  MdeModulePkg: DxeCore: Add GetMemoryTypeInformationResourceHob Helper

In preparation for sharing memory bin logic with PEI, create a
helper function that finds and validates a resource descriptor
HOB owned by gEfiMemoryTypeInformationGuid.

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: 47e73e61c6eaca1c611c9ba19eb5a92f16139613
      
https://github.com/tianocore/edk2/commit/47e73e61c6eaca1c611c9ba19eb5a92f16139613
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    M MdeModulePkg/Core/Dxe/Mem/Page.c

  Log Message:
  -----------
  MdeModulePkg: Dxe Core: Add AllocateMemoryBins Helper Fn

In preparation for sharing logic with PEI for memory bins,
add AllocateMemoryTypeInformationBins().

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: 6b838a0d44edcf95c4edfa12212e19c7b79ab721
      
https://github.com/tianocore/edk2/commit/6b838a0d44edcf95c4edfa12212e19c7b79ab721
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    M MdeModulePkg/Core/Dxe/Mem/Page.c

  Log Message:
  -----------
  MdeModulePkg: Dxe Core: Add UpdateMemoryStatistics Helper Fn

In preparation for sharing logic with PEI, create a helper
function to update the memory bin statistics.

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: 81bec6f0fbf686fa94b193eb16cba4729dfbc98b
      
https://github.com/tianocore/edk2/commit/81bec6f0fbf686fa94b193eb16cba4729dfbc98b
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    M MdeModulePkg/Core/Dxe/DxeMain.h
    M MdeModulePkg/Core/Dxe/Gcd/Gcd.c
    M MdeModulePkg/Core/Dxe/Mem/Page.c

  Log Message:
  -----------
  MdeModulePkg: Dxe Core: Prep CoreSetMemoryTypeInformationRange for PEI

Migrate CoreSetMemoryTypeInformationRange() to not use globals so
it can be used in PEI as well.

This temporarily moves the EFI_MEMORY_STATISTICS structure to
DxeMain.h so that it can be used in Gcd.c as well as Page.c.
This will migrate to a different private header once that is included.

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: b33c1b9f7d00e1b06910385dcfac2174f2f081f9
      
https://github.com/tianocore/edk2/commit/b33c1b9f7d00e1b06910385dcfac2174f2f081f9
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    M MdeModulePkg/Core/Dxe/Mem/Page.c

  Log Message:
  -----------
  MdeModulePkg: Dxe Core: Add Stats Init Helper

This adds a helper function to initialize the
memory bin statistics as the same logic is
repeated in several places.

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: a196ef6db5c77708dde3528dc735494037f16ab3
      
https://github.com/tianocore/edk2/commit/a196ef6db5c77708dde3528dc735494037f16ab3
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    M MdeModulePkg/Core/Dxe/Mem/Page.c

  Log Message:
  -----------
  MdeModulePkg: Dxe Core: Add Resource Desc Hob Generation

This commit adds a parameter to the memory bin allocation function
to tell it whether it should create the Resource Descriptor HOB
owned by gMemoryTypeInformationGuid. This will be used by PEI to
tell DXE where the memory bins are.

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: eab3300622876b674cf22c5c56f899b0a6df1087
      
https://github.com/tianocore/edk2/commit/eab3300622876b674cf22c5c56f899b0a6df1087
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    M MdeModulePkg/Core/Dxe/DxeMain.h
    M MdeModulePkg/Core/Dxe/DxeMain.inf
    M MdeModulePkg/Core/Dxe/Gcd/Gcd.c
    A MdeModulePkg/Core/Dxe/Mem/MemoryBin.c
    M MdeModulePkg/Core/Dxe/Mem/Page.c
    A MdeModulePkg/Core/PrivateInclude/MemoryBin.h
    M MdeModulePkg/MdeModulePkg.dec

  Log Message:
  -----------
  MdeModulePkg: Dxe Core: Split Memory Bin Logic Into Separate File

This commits splits out logic currently contained in
Gcd.c and Page.c to a new file called
MemoryBin.c. This is set up in preparation to
add support to PEI for memory bins (an S4 resume stability
feature).

MemoryBin.c takes all global state in as parameters so that
DXE core can use globals and PEI core can use HOBs.

There is no logic change here, just consolidating the
functionality to share with PEI.

This was requested not to be a library.

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: 840d07abb15a722f47bfd9151681207246b71573
      
https://github.com/tianocore/edk2/commit/840d07abb15a722f47bfd9151681207246b71573
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    M MdeModulePkg/MdeModulePkg.dec

  Log Message:
  -----------
  MdeModulePkg: Add PCD to Enable Memory Bin Support in PEI

This adds a PCD, FALSE by default, that enables the memory
bin feature in PEI.

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: 2e7aa4810bd3e4008e561f2ea5a9de1dc189c817
      
https://github.com/tianocore/edk2/commit/2e7aa4810bd3e4008e561f2ea5a9de1dc189c817
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    A MdeModulePkg/Core/Pei/Memory/MemoryBin.c
    M MdeModulePkg/Core/Pei/Memory/MemoryServices.c
    M MdeModulePkg/Core/Pei/PeiMain.h
    M MdeModulePkg/Core/Pei/PeiMain.inf

  Log Message:
  -----------
  MdeModulePkg: PeiCore: Add Memory Bin Support to Post-Mem PEI

This commit adds opt-in support for post-mem PEI memory bins.
See the README for full details.

MemoryBin.c is duplicated to PeiCore per request.

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: cf1a2a541e1fa19a0117a952fece30de1928caae
      
https://github.com/tianocore/edk2/commit/cf1a2a541e1fa19a0117a952fece30de1928caae
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    M MdeModulePkg/Core/Dxe/Gcd/Gcd.c

  Log Message:
  -----------
  MdeModulePkg: DxeCore: Update Memory Statistics from PEI

If memory bins are enabled for PEI, PEI will produce
Memory Allocation HOBs marked with gEfiMemoryTypeInformationGuid.
If these exist, DXE core will now process the stats from them
to have accurate numbers.

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: 1b39cb1d816a870a44fbeeaaf092773b1b08b179
      
https://github.com/tianocore/edk2/commit/1b39cb1d816a870a44fbeeaaf092773b1b08b179
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    A MdeModulePkg/Core/Dxe/Mem/GoogleTest/MemoryBinGoogleTest.cpp
    A MdeModulePkg/Core/Dxe/Mem/GoogleTest/MemoryBinGoogleTestHost.inf
    A MdeModulePkg/Core/MemoryBins.md
    M MdeModulePkg/Test/MdeModulePkgHostTest.dsc

  Log Message:
  -----------
  MdeModulePkg: MemoryBins: Add GoogleTest and README

This commit adds unit tests and documentation for the Memory Bin
feature.

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: efc3d6a41742dd710f7df861e56f29bbc2beac6e
      
https://github.com/tianocore/edk2/commit/efc3d6a41742dd710f7df861e56f29bbc2beac6e
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    M OvmfPkg/OvmfPkgIa32X64.dsc
    M OvmfPkg/OvmfPkgX64.dsc
    M OvmfPkg/PlatformPei/MemTypeInfo.c
    M OvmfPkg/PlatformPei/Platform.c
    M OvmfPkg/PlatformPei/Platform.h

  Log Message:
  -----------
  OvmfPkg: PlatformPei: Add PEI Memory Bin Support

This commit enables PEI memory bins in OVMF IA32X64 and
OVMF X64.

OVMF supports many different boot flows. The variable PEIM
is only dispatched when SMM_REQUIRE is TRUE. The early variable
store is not set up otherwise.

The PlatformPei PEIM requires the variable PPI be available
before creating the gEfiMemoryTypeInformationGuid HOB, in order
to use the BDS advertised bin sizes. If SMM_REQUIRE is FALSE,
it just produces the HOB.

PEI Core requires that the gEfiMemoryTypeInformationGuid HOB be
produced pre-mem PEI in order to set up the memory bins at the
start of post-mem PEI. PlatformPei is also the PEIM that installs
permanent memory.

As such, a depex on the variable PPI cannot be used, to support
the different flows. So, this commit splits the PlatformPei
initialization flow into two phases. The first phase completes
until memory bin initialization. If that returns success (either
because SMM_REQUIRE is FALSE or because the variable PPI was
already installed), phase 2 init is completed immediately and
no callback is created. If that fails, a callback is created
for the variable read PPI and phase 2 initialization is completed
after that.

Signed-off-by: Oliver Smith-Denny <[email protected]>


  Commit: a721a79555c4e9c9fe0a821a985a2d2972e34fad
      
https://github.com/tianocore/edk2/commit/a721a79555c4e9c9fe0a821a985a2d2972e34fad
  Author: Oliver Smith-Denny <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    M ArmVirtPkg/ArmVirt.dsc.inc
    M ArmVirtPkg/ArmVirtQemu.dsc

  Log Message:
  -----------
  ArmVirtPkg: MemoryInitPeim: Add PEI Memory Bin Support

This commit adds memory bin support to ArmVirtQemu. ArmVirtQemu
does not have a PEI variable driver, so it does not attempt
to update the bin size or location.

The bin sizes are also updated because they were very out of
date.

Signed-off-by: Oliver Smith-Denny <[email protected]>


Compare: https://github.com/tianocore/edk2/compare/b62011ce2841...a721a79555c4

To unsubscribe from these emails, change your notification settings at 
https://github.com/tianocore/edk2/settings/notifications


_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits

Reply via email to