Commit 66362c9a authored by Ard Biesheuvel's avatar Ard Biesheuvel Committed by Catalin Marinas

arm64: efi: fix initcall return values

Even though initcall return values are typically ignored, the
prototype is to return 0 on success or a negative errno value on
error. So fix the arm_enable_runtime_services() implementation to
return 0 on conditions that are not in fact errors, and return a
meaningful error code otherwise.
Signed-off-by: default avatarArd Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: default avatarMatt Fleming <matt@codeblueprint.co.uk>
Acked-by: default avatarWill Deacon <will.deacon@arm.com>
Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
parent 81d94577
...@@ -280,12 +280,12 @@ static int __init arm64_enable_runtime_services(void) ...@@ -280,12 +280,12 @@ static int __init arm64_enable_runtime_services(void)
if (!efi_enabled(EFI_BOOT)) { if (!efi_enabled(EFI_BOOT)) {
pr_info("EFI services will not be available.\n"); pr_info("EFI services will not be available.\n");
return -1; return 0;
} }
if (efi_runtime_disabled()) { if (efi_runtime_disabled()) {
pr_info("EFI runtime services will be disabled.\n"); pr_info("EFI runtime services will be disabled.\n");
return -1; return 0;
} }
pr_info("Remapping and enabling EFI services.\n"); pr_info("Remapping and enabling EFI services.\n");
...@@ -295,7 +295,7 @@ static int __init arm64_enable_runtime_services(void) ...@@ -295,7 +295,7 @@ static int __init arm64_enable_runtime_services(void)
mapsize); mapsize);
if (!memmap.map) { if (!memmap.map) {
pr_err("Failed to remap EFI memory map\n"); pr_err("Failed to remap EFI memory map\n");
return -1; return -ENOMEM;
} }
memmap.map_end = memmap.map + mapsize; memmap.map_end = memmap.map + mapsize;
efi.memmap = &memmap; efi.memmap = &memmap;
...@@ -304,13 +304,13 @@ static int __init arm64_enable_runtime_services(void) ...@@ -304,13 +304,13 @@ static int __init arm64_enable_runtime_services(void)
sizeof(efi_system_table_t)); sizeof(efi_system_table_t));
if (!efi.systab) { if (!efi.systab) {
pr_err("Failed to remap EFI System Table\n"); pr_err("Failed to remap EFI System Table\n");
return -1; return -ENOMEM;
} }
set_bit(EFI_SYSTEM_TABLES, &efi.flags); set_bit(EFI_SYSTEM_TABLES, &efi.flags);
if (!efi_virtmap_init()) { if (!efi_virtmap_init()) {
pr_err("No UEFI virtual mapping was installed -- runtime services will not be available\n"); pr_err("No UEFI virtual mapping was installed -- runtime services will not be available\n");
return -1; return -ENOMEM;
} }
/* Set up runtime services function pointers */ /* Set up runtime services function pointers */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment