edk2/FatPkg/EnhancedFatDxe
Chris Fernald 12c5ded287 FatPkg: Clean any volume caches during exit boot services
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.

Signed-off-by: Chris Fernald <chfernal@microsoft.com>
2026-06-22 22:06:08 +00:00
..
ComponentName.c FatPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
Data.c FatPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
Delete.c FatPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
DirectoryCache.c FatPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
DirectoryManage.c FatPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
DiskCache.c FatPkg: Improvements to Fat to Fix File Corruption 2024-09-23 16:50:39 +00:00
Fat.c FatPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
Fat.h FatPkg: Clean any volume caches during exit boot services 2026-06-22 22:06:08 +00:00
Fat.inf FatPkg: Clean any volume caches during exit boot services 2026-06-22 22:06:08 +00:00
Fat.uni FatPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:59 -07:00
FatExtra.uni FatPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:59 -07:00
FatFileSystem.h FatPkg: Replace include guards with #pragma once 2026-02-23 21:01:28 +00:00
FileName.c FatPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
FileSpace.c Revert "FatPkg: Validate Reserved FAT Entries on Volume Open" 2025-02-14 06:58:07 +00:00
Flush.c FatPkg: Clean any volume caches during exit boot services 2026-06-22 22:06:08 +00:00
Hash.c FatPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
Info.c FatPkg: Fix potentially uninitialized variable 2024-10-25 18:48:06 +00:00
Init.c FatPkg: Clean any volume caches during exit boot services 2026-06-22 22:06:08 +00:00
Misc.c FatPkg: Clean any volume caches during exit boot services 2026-06-22 22:06:08 +00:00
Open.c FatPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
OpenVolume.c FatPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
ReadWrite.c FatPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
UnicodeCollation.c FatPkg/EnhancedFatDxe: Remove Iso639Language 2025-10-14 01:45:12 +00:00