Messages in this thread | | | Date | Thu, 21 Nov 2013 23:19:40 +0100 | From | Borislav Petkov <> | Subject | Re: [RFC v2 2/2] x86, efi: Early use of boot service memory |
| |
On Thu, Nov 21, 2013 at 02:01:26PM -0700, Jerry Hoemann wrote: > Some platform have firmware that violate the UEFI spec and access boot service > code or data segments after the system has called ExitBootServices(). > The call to efi_reserve_boot_services is a workaround to avoid using > boot service memory until after the kernel has done SetVirtualAddressMap(). > However, this reservation fragments memory which can cause > large allocations early in boot (e.g. crash kernel) to fail. > > When reserve_crashkernel fails, kdump is disabled. > > This patch creates a quirk list that governs when the workaround, > efi_reserve_boot_services, is called. > > For all firmware released prior to 2014, the workaround will be > called unless an entry for the platform is in the quirk list saying > not to do the workaround. > > For all firmware released 2014 and later, the workaround will not > be called unless an entry for the platform is in the quirk list > saying to call the workaround.
This is yet another quirk list which can grow uncontrolled considering the notoriety of firmware bugs. And since detecting such spec violation is very simple - boot Linux on the machine - we should rather disable this by default for FW >= 2014 and make this test part of the firmware test suite so that vendors can get a chance to fix their BIOSen.
Provided vendors do boot fwts on their validation platforms, that is.
Yo Fleming, got a better idea? :)
-- Regards/Gruss, Boris.
Sent from a fat crate under my desk. Formatting is fine. --
| |