diff options
Diffstat (limited to 'arch/efi')
-rw-r--r-- | arch/efi/efi/efi-image.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/arch/efi/efi/efi-image.c b/arch/efi/efi/efi-image.c index b6437f4078..c78043b0de 100644 --- a/arch/efi/efi/efi-image.c +++ b/arch/efi/efi/efi-image.c @@ -190,7 +190,7 @@ static inline void linux_efi_handover(efi_handle_t handle, static int do_bootm_efi(struct image_data *data) { void *tmp; - void *initrd; + void *initrd = NULL; size_t size; efi_handle_t handle; int ret; @@ -244,6 +244,13 @@ static int do_bootm_efi(struct image_data *data) printf("...\n"); } + if (data->dryrun) { + BS->unload_image(handle); + free(boot_header); + free(initrd); + return 0; + } + efi_set_variable_usec("LoaderTimeExecUSec", &efi_systemd_vendor_guid, get_time_ns()/1000); |