UefiBootManagerLib/BmBoot.c: add iPXE fail handling#309
Conversation
Add a popup for when iPXE fails a boot, e.g. due to lack of plugged in network connection. Signed-off-by: Filip Lewinski <filip.lewinski@3mdeb.com>
| // contains iPXE, since the boot entry name is platform vendor-specific. | ||
| // | ||
| if ((DevicePathType (BootOption->FilePath) == HARDWARE_DEVICE_PATH) && | ||
| (DevicePathSubType (BootOption->FilePath) == HW_MEMMAP_DP)) { |
There was a problem hiding this comment.
The indentation is off. Should be something like this:
if ((DevicePathType (BootOption->FilePath) == HARDWARE_DEVICE_PATH) &&
(DevicePathSubType (BootOption->FilePath) == HW_MEMMAP_DP)) {There was a problem hiding this comment.
| // connection. Catching boots that exit with a warning as well, hence | ||
| // not EFI_ERROR (). | ||
| // | ||
| if (Status != EFI_SUCCESS ) { |
There was a problem hiding this comment.
It is the same as if (EFI_ERROR (Status)) { above. It should be moved there I think. Also, there is redundant sapce after EFI_SUCCESS)
Improve the message for readability and ensure popup doesn't appear on intentional exit out of iPXE. Signed-off-by: Filip Lewinski <filip.lewinski@3mdeb.com>
|
Now that I think about it, why do we put more popups to EDK2? What if someone does not use EDK2 but uses the Dasharo iPXE script? Then this solution is not generic. What I think might be best is to simply edit the script https://github.com/Dasharo/dasharo-blobs/blob/main/dasharo/dasharo.ipxe and do something when the commands fail, e.g. use the read to prompt user to press ENTER. E.g. That way, regardless of who uses the script, they will be able to read the error from the screen. If the problem you are trying to solve, is really just quiet failure. @filipleple Smaller, simpler, more generic. |
|
@miczyg1 o, yeah, that works too, nice: |
Add a popup for when iPXE fails a boot, e.g. due to lack of plugged in network connection. Addresses Dasharo/dasharo-issues#1834
Dasharo/coreboot#910
ref: NCM-2288