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.schucha...@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodi...@linaro.org> --- 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 c5d13c0f19c..73d0279e843 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