[U-Boot] [PATCH v2] efi_loader: bootmgr: print a message when loading from BootNext failed
AKASHI Takahiro
takahiro.akashi at linaro.org
Tue May 28 06:24:05 UTC 2019
On Tue, May 28, 2019 at 08:16:37AM +0200, Heinrich Schuchardt wrote:
> On 5/24/19 8:59 AM, AKASHI Takahiro wrote:
> >If a user defines BootNext but not BootOrder and loading from BootNext
> >fails, you will see only a message like this:
> > BootOrder not defined
> >
> >This may confuse a user. Adding an error message will be helpful.
> >
> >Signed-off-by: AKASHI Takahiro <takahiro.akashi at linaro.org>
> >---
> >Changes in v2 (May 24, 2019)
> >* add an error message to try_load_entry()
> >---
> > lib/efi_loader/efi_bootmgr.c | 6 +++++-
> > 1 file changed, 5 insertions(+), 1 deletion(-)
> >
> >diff --git a/lib/efi_loader/efi_bootmgr.c b/lib/efi_loader/efi_bootmgr.c
> >index 7bf51874c1c1..bb66fee0a3d2 100644
> >--- a/lib/efi_loader/efi_bootmgr.c
> >+++ b/lib/efi_loader/efi_bootmgr.c
> >@@ -149,8 +149,10 @@ static efi_status_t try_load_entry(u16 n, efi_handle_t *handle)
> >
> > ret = EFI_CALL(efi_load_image(true, efi_root, lo.file_path,
> > NULL, 0, handle));
> >- if (ret != EFI_SUCCESS)
> >+ if (ret != EFI_SUCCESS) {
> >+ printf("Loading from Boot%04X failed\n", n);
> > goto error;
> >+ }
> >
> > attributes = EFI_VARIABLE_BOOTSERVICE_ACCESS |
> > EFI_VARIABLE_RUNTIME_ACCESS;
> >@@ -215,6 +217,8 @@ efi_status_t efi_bootmgr_load(efi_handle_t *handle)
> > ret = try_load_entry(bootnext, handle);
> > if (ret == EFI_SUCCESS)
> > return ret;
> >+ printf("Loading from Boot%04X failed, falling back into BootOrder...\n",
>
> This is an example output:
>
> => bootefi bootmgr
> Loading from Boot0004 failed
> Loading from Boot0004 failed, falling back into BootOrder...
> Loading from Boot0005 failed
> Loading from Boot0003 failed
> Loading from Boot0004 failed
> EFI boot manager: Cannot load any image
>
> "Loading from Boot0004 failed" appears twice in the beginning.
>
> Either leave the message away or change it to
>
> printf("Falling back into BootOrder...\n");
Please make this change for me so that I don't have to send out
another patch?
Thanks,
-Takahiro Akashi
> Best regards
>
> Heinrich
>
> >+ bootnext);
> > }
> > } else {
> > printf("Deleting BootNext failed\n");
> >
>
More information about the U-Boot
mailing list