ReleaseMicrosoftMicrosoftpublished Dec 2, 2025seen Jun 26

microsoft/mu_basecore v2025020002.1.3

microsoft/mu_basecore

Open original ↗

Captured source

source ↗
published Dec 2, 2025seen Jun 26captured 1whttp 200method plain

v2025020002.1.3

Repository: microsoft/mu_basecore

Tag: v2025020002.1.3

Published: 2025-12-02T16:07:18Z

Prerelease: no

Release notes:

What's Changed

MdeModulePkg/Variable: Move RT cache buffer allocation to DXE @makubacki (#1519)

Change Details

Description

Commit d8f513de3e3ef228af7e6facf0ad3e35c3224032 (an edk2 commit) added runtime memory allocation to VariablePei. That will cause runtime memory bucket fragmentation affecting hibernate stability as these runtime allocations are separate from the main runtime memory type bucket allocation made by the DXE Core.

To preserve the existing functionality but allow the runtime buffer to come from the DXE bucket, the allocations in PEI are changed to boot services data allocations and the contents are moved to the runtime memory buffers (and those pages unblocked to MM) in the DXE variable driver after the bucket has been allocated by the DXE core.

---

> Note: I will upstream this to edk2 but it is urgently needed in Project Mu.

  • [x] Impacts functionality?
  • [ ] Impacts security?
  • [ ] Breaking change?
  • [ ] Includes tests?
  • [ ] Includes documentation?

How This Was Tested

  • CI
  • Boot to EFI shell on QEMU Q35 and verify allocations come from the DXE allocated bucket buffer

Integration Instructions

  • N/A

Fix alignment of PE/COFF image address to section alignment @rohitkr89 (#1580)

Change Details

Description

With MSVC 14.44.35207, & operation for section alignment is causing compilation failure : MdeModulePkg\Core\Pei\Image\Image.c(405): '~': zero extending 'UINT32' to 'PHYSICAL_ADDRESS' of greater size. Use EFI_PHYSICAL_ADDRESS instead of UINTN for ImageAddress assignment to get proper masking address for section alignment.

  • [ ] Impacts functionality?
  • [ ] Impacts security?
  • [ ] Breaking change?
  • [ ] Includes tests?
  • [ ] Includes documentation?

How This Was Tested

Build pipeline compilation.

Integration Instructions

N/A

[Rebase \& FF] Adding a communication buffer update protocol to save memory fragmentation @kuqin12 (#1571)

Change Details

Description

The current Standalone MM model does not coalesce the runtime memory when the unblock memory request in PEI allocate runtime memory. This will lead to fragmented memory map and potentially hibernation failure.

This change adds a protocol definition that allows an event to be signaled when all the PEI-allocated runtime memory migrate to permanent runtime memory.

This change also adds a byte in the communication buffer status to differentiate the target.

  • [x] Impacts functionality?
  • [x] Impacts security?
  • [ ] Breaking change?
  • [ ] Includes tests?
  • [ ] Includes documentation?

How This Was Tested

This was tested on both QEMU Q35 and proprietary hardware platforms.

Integration Instructions

For consumers that need to get signaled, please register an event for gMmCommBufferUpdateProtocolGuid.

[REBASE \& FF] UefiCpuPkg: Migrate MpDxe module to Patina-EDK2 @cfernald (#1567)

Change Details

Description

Migrating the MP Dxe module to Patina-Edk2 to remove Patina dependencies on MU_BASECORE.

Reference: https://github.com/OpenDevicePartnership/patina-edk2/pull/10

  • [x] Impacts functionality?
  • [ ] Impacts security?
  • [x] Breaking change?
  • [ ] Includes tests?
  • [ ] Includes documentation?

How This Was Tested

N/A

Integration Instructions

Move references to MpDxe to use PatinaPkg here: https://github.com/OpenDevicePartnership/patina-edk2

MdePkg: Add Google Mock Library for PciCf8Lib @TsunFengHuang (#1558)

Change Details

Description

Add Google Mock Library for PciCf8Lib

For details on how to complete these options and their meaning refer to CONTRIBUTING.md.

  • [ ] Impacts functionality?
  • [ ] Impacts security?
  • [ ] Breaking change?
  • [x] Includes tests?
  • [ ] Includes documentation?

How This Was Tested

Consumed by other google test

Integration Instructions

N/A

[release/202502] Update BaseTools ext dep to v2025020002.1.2 @[mu-automation[bot]](https://github.com/apps/mu-automation) (#1561)

Change Details

This PR updates the BaseTools external dependency to version v2025020002.1.2.

[release/202502] Update BaseTools ext dep to v2025020002.1.0 @[mu-automation[bot]](https://github.com/apps/mu-automation) (#1553)

Change Details

This PR updates the BaseTools external dependency to version v2025020002.1.0.

[Rebase \& FF] Standalone MM IPL fixes @kuqin12 (#1556)

Change Details

Description

This change cherry-picks 2 commits from EDK2 that could cause some platforms to not work with Standalone MM as expected.

The last commit is an add-on to resolve the feedback on this PR and will be taken to edk2.

  • [x] Impacts functionality?
  • [ ] Impacts security?
  • [ ] Breaking change?
  • [ ] Includes tests?
  • [ ] Includes documentation?

How This Was Tested

This was tested on QEMU Q35 platform and booted to Windows desktop.

Integration Instructions

N/A

Full Changelog: https://github.com/microsoft/mu_basecore/compare/v2025020002.1.2...v2025020002.1.3