summaryrefslogtreecommitdiff
path: root/drivers/firmware/efi/libstub/file.c
diff options
context:
space:
mode:
authorArd Biesheuvel <ardb@kernel.org>2022-09-16 14:03:06 +0200
committerArd Biesheuvel <ardb@kernel.org>2022-09-27 13:21:36 +0200
commitf4dc7fffa9873db50ec25624572f8217a6225de8 (patch)
tree13c8564501a81cd830ad158c822b90afbb8b188b /drivers/firmware/efi/libstub/file.c
parenta12b78b5714456e276b9545005f518802a319af9 (diff)
efi: libstub: unify initrd loading between architectures
Use a EFI configuration table to pass the initrd to the core kernel, instead of per-arch methods. This cleans up the code considerably, and should make it easier for architectures to get rid of their reliance on DT for doing EFI boot in the future. Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Diffstat (limited to 'drivers/firmware/efi/libstub/file.c')
-rw-r--r--drivers/firmware/efi/libstub/file.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/firmware/efi/libstub/file.c b/drivers/firmware/efi/libstub/file.c
index dd95f330fe6e..488a8027518d 100644
--- a/drivers/firmware/efi/libstub/file.c
+++ b/drivers/firmware/efi/libstub/file.c
@@ -238,6 +238,9 @@ efi_status_t handle_cmdline_files(efi_loaded_image_t *image,
if (volume)
volume->close(volume);
+
+ if (*load_size == 0)
+ return EFI_NOT_READY;
return EFI_SUCCESS;
err_close_file: