[PATCH 1/1] efi_loader: superfluous efi_restore_gd after EFI_CALL

Ilias Apalodimas ilias.apalodimas at linaro.org
Fri Apr 19 15:25:36 CEST 2024


On Fri, 19 Apr 2024 at 12:59, Heinrich Schuchardt
<heinrich.schuchardt at canonical.com> wrote:
>
> EFI_CALL() invokes __efi_entry_check() which executes set_gd(efi_gd).
> There is no need to execute set_gd(efi_gd) again via efi_restore_gd().
>
> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
> ---
>  cmd/bootefi.c               | 1 -
>  cmd/efidebug.c              | 2 --
>  lib/efi_loader/efi_helper.c | 2 --
>  3 files changed, 5 deletions(-)
>
> diff --git a/cmd/bootefi.c b/cmd/bootefi.c
> index 578dbb19a7e..c1454ffb948 100644
> --- a/cmd/bootefi.c
> +++ b/cmd/bootefi.c
> @@ -107,7 +107,6 @@ static int do_efi_selftest(void)
>
>         /* Execute the test */
>         ret = EFI_CALL(efi_selftest(&image_obj->header, &systab));
> -       efi_restore_gd();
>         free(loaded_image_info->load_options);
>         efi_free_pool(test_device_path);
>         efi_free_pool(test_image_path);
> diff --git a/cmd/efidebug.c b/cmd/efidebug.c
> index 32c64711b6c..30def6b6831 100644
> --- a/cmd/efidebug.c
> +++ b/cmd/efidebug.c
> @@ -1466,8 +1466,6 @@ static __maybe_unused int do_efi_test_bootmgr(struct cmd_tbl *cmdtp, int flag,
>         if (ret && exit_data)
>                 efi_free_pool(exit_data);
>
> -       efi_restore_gd();
> -
>         free(load_options);
>         return CMD_RET_SUCCESS;
>  }
> diff --git a/lib/efi_loader/efi_helper.c b/lib/efi_loader/efi_helper.c
> index 58761fae784..88c3586787e 100644
> --- a/lib/efi_loader/efi_helper.c
> +++ b/lib/efi_loader/efi_helper.c
> @@ -544,8 +544,6 @@ efi_status_t do_bootefi_exec(efi_handle_t handle, void *load_options)
>                 }
>         }
>
> -       efi_restore_gd();
> -
>  out:
>         free(load_options);
>
> --
> 2.43.0
>

Reviewed-by: Ilias Apalodimas <ilias.apalodimas at linaro.org>


More information about the U-Boot mailing list