4 ms·
The UEFI runtime services provide functionality that is not generically exposed through any other OS environment. Linux could just refuse to provide those runti
by mjg59 5y ago
The UEFI runtime services provide functionality that is not generically exposed through any other OS environment. Linux could just refuse to provide those runtime features, and things would roughly work[1] - we'd still need to call some UEFI features in the boot stub, but the same is true of BIOS (look at what the 16-bit code does in terms of obtaining information that the kernel uses after init). If you want to drop all access to runtime services after kernel boot, you can by simply passing efi=noruntime to the kernel arguments.
[1] Some features would be broken, like recognising whether the system had booted successfully
- anthk 5y agoEven back in the BIOS days Linux overrode lots of BIOS stuff such as partition size limits once it booted.
- tremon 5y agocan efivarfs still be accessed after booting with efi=noruntime? If so, I might add that on my systems and see if anything breaks.
- mjg59 5y agoNo, all runtime services are gone. You don't /strictly/ need them in order to boot - most Linux distributions will install a loader in the fallback path and the firmware will run it even if there are no boot entries.