diff options
author | Laszlo Ersek <lersek@redhat.com> | 2016-07-08 02:49:45 +0200 |
---|---|---|
committer | Laszlo Ersek <lersek@redhat.com> | 2016-07-13 01:04:37 +0200 |
commit | 2eb358986052bd0104f6d16fbeb0a450658256fc (patch) | |
tree | 296164ed8d79770dd6bf841177410ef557934a43 /OvmfPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf | |
parent | 16f26de663967b5a64140b6abba2c145ea50194c (diff) | |
download | edk2-2eb358986052bd0104f6d16fbeb0a450658256fc.tar.gz edk2-2eb358986052bd0104f6d16fbeb0a450658256fc.tar.bz2 edk2-2eb358986052bd0104f6d16fbeb0a450658256fc.zip |
OvmfPkg/PlatformBootManagerLib: remove stale FvFile boot options
Removes any boot options that point to binaries built into the firmware
and have become stale due to any of the following:
- DXEFV's base address or size changed (historical),
- DXEFV's FvNameGuid changed,
- the FILE_GUID of the pointed-to binary changed,
- the referenced binary is no longer built into the firmware.
For example, multiple such "EFI Internal Shell" boot options can coexist.
They technically differ from each other, but may not describe any built-in
shell binary exactly. Such options can accumulate in a varstore over time,
and while they remain generally bootable (thanks to the efforts of
BmGetFileBufferByFvFilePath()), they look bad.
Filter out any stale options.
This functionality is not added to QemuBootOrderLib, because it is
independent from QEMU and fw_cfg.
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Gary Lin <glin@suse.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Diffstat (limited to 'OvmfPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf')
-rw-r--r-- | OvmfPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/OvmfPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf b/OvmfPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf index ffa1288e4d..f3303b9f2c 100644 --- a/OvmfPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf +++ b/OvmfPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf @@ -72,6 +72,7 @@ gEfiS3SaveStateProtocolGuid # PROTOCOL SOMETIMES_CONSUMED
gEfiDxeSmmReadyToLockProtocolGuid # PROTOCOL SOMETIMES_PRODUCED
gEfiLoadedImageProtocolGuid # PROTOCOL SOMETIMES_PRODUCED
+ gEfiFirmwareVolume2ProtocolGuid # PROTOCOL SOMETIMES_CONSUMED
[Guids]
gEfiXenInfoGuid
|