ReleaseMicrosoftMicrosoftpublished Jun 24, 2026seen Jun 26

microsoft/mu_basecore v2025110002.0.6

microsoft/mu_basecore

Open original ↗

Captured source

source ↗
published Jun 24, 2026seen Jun 26captured 2whttp 200method plain

v2025110002.0.6

Repository: microsoft/mu_basecore

Tag: v2025110002.0.6

Published: 2026-06-24T00:26:23Z

Prerelease: no

Release notes:

What's Changed

[CHERRY-PICK] FatPkg: Clean any volume caches during exit boot services @cfernald (#1832)

Change Details

Description

The current implementation assumes the the caller will perform the necessary cleanup before exiting boot services. This has been observed to drop some cached file writes that occur even before the application calling exit boot services is launched.

This commit adds a per-volume pre-ExitBootServices event to flush any dirty caches and perform other cleanup the volume to ensure all write data is persisted and consistent. After the flush, caching will be disabled for the volume in the future to ensure that all subsequent access persists.

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

How This Was Tested

Tested on QEMU with one-off shell test and boot to OS

Integration Instructions

N/A

[CHERRY-PICK] MdeModulePkg/Core/Dxe/Gcd: make persistent override special-purpose @sureshkumarpMSFT (#1834)

Change Details

MdeModulePkg/Core/Dxe/Gcd: make persistent override special-purpose

Fix the GCD memory type selection logic in DXE GCD initialization so persistent memory correctly takes precedence over special-purpose memory when both attributes are present.

The existing code/comment said persistent should win, but the condition order allowed special-purpose to overwrite persistent. This change swaps the checks so behavior matches the intended precedence and comment.

(cherry picked from commit e03fb69e9aad9d8ee501c512c0f1a08d8aa1fa8b)

Description

Fix the GCD memory type selection logic in DXE GCD initialization so persistent memory correctly takes precedence over special-purpose memory when both attributes are present.

The existing code/comment said persistent should win, but the condition order allowed special-purpose to overwrite persistent. This change swaps the checks so behavior matches the intended precedence and comment.

Signed-off-by: Sureshkumar Ponnusamy [sponnusamy@microsoft.com](mailto:sponnusamy@microsoft.com)

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

How This Was Tested

Validated on target system with a Resource Descriptor HOB containing both EFI_RESOURCE_ATTRIBUTE_PERSISTENT and EFI_RESOURCE_ATTRIBUTE_SPECIAL_PURPOSE.

Confirmed resulting GCD memory type is EfiGcdMemoryTypePersistent

Integration Instructions

N/A

Full Changelog: https://github.com/microsoft/mu_basecore/compare/v2025110002.0.5...v2025110002.0.6

Notability

notability 3.0/10

Routine version release of microsoft/mu_basecore