Wrong exit status in iPXE when booting via PXE prevent UEFI system from booting from local disk
UEFI systems that has "PXE, local disk" as boot sequence and load and/or use iPXE to continue the network boot remain stuck in the network step due to wrong exit status in ipxe.
When using iPXE on a UEFI system, in order to completely exit from the iPXE environment you need to use
rather than just using:
UEFI does not seems to handle the failure of a boot mode: if it start have to suceed, or will go back to select another boot method.
When using qemu-kvm, with boot order: "pxe, local disk" if iPXE is interrupted with just "exit", it present to the user the UEFI UI, while passing "exit 1" will exit from the network boot and will attempt to boot from local disk.
Repeating the test with a lenovo T450s in uefi only mode, the system goes back to UEFI BOOT device selection screen no matter if exit or exit 1 is used.
Scenarios affected by this bug are:
- boot from local disk when system is unknown and reach to the global default boot page, where use can choose to discover the system or boot from local disks
- after provisioning a system, it reboot but if the boot sequence is still the same, the system will load pxe once again, but this time will not be provided with any kickstart
in both scenarios is important to preserve the same experience as with BIOS in order to streamline UX during provisioning
iPXE in UEFI env need exit with status code to attempt boot from other
device, i.e. netboot -> local disk
#1 Updated by Andrea Perotti 6 months ago
Tested with ipxe 1.21.1+ (downloaded official build from upstream site)