efi/ia64: Use local variable for EFI system table address
authorArd Biesheuvel <ardb@kernel.org>
Mon, 20 Jan 2020 14:48:07 +0000 (15:48 +0100)
committerArd Biesheuvel <ardb@kernel.org>
Sun, 23 Feb 2020 20:59:42 +0000 (21:59 +0100)
The IA64 code never refers to the EFI system table except from
inside the scope of efi_init(). So let's use a local variable
instead of efi.systab, which will be going away soon.

Tested-by: Tony Luck <tony.luck@intel.com> # arch/ia64
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
arch/ia64/kernel/efi.c

index 74fad89ae2094333747495d96da8329c63c59af0..81bc5031a115b04cb13b9ff2f5e9d2d9f068d365 100644 (file)
@@ -484,6 +484,7 @@ efi_map_pal_code (void)
 void __init
 efi_init (void)
 {
+       const efi_system_table_t *efi_systab;
        void *efi_map_start, *efi_map_end;
        u64 efi_desc_size;
        char *cp;
@@ -516,17 +517,17 @@ efi_init (void)
                printk(KERN_INFO "Ignoring memory above %lluMB\n",
                       max_addr >> 20);
 
-       efi.systab = __va(ia64_boot_param->efi_systab);
+       efi_systab = __va(ia64_boot_param->efi_systab);
 
        /*
         * Verify the EFI Table
         */
-       if (efi.systab == NULL)
+       if (efi_systab == NULL)
                panic("Whoa! Can't find EFI system table.\n");
-       if (efi_systab_check_header(&efi.systab->hdr, 1))
+       if (efi_systab_check_header(&efi_systab->hdr, 1))
                panic("Whoa! EFI system table signature incorrect\n");
 
-       efi_systab_report_header(&efi.systab->hdr, efi.systab->fw_vendor);
+       efi_systab_report_header(&efi_systab->hdr, efi_systab->fw_vendor);
 
        palo_phys      = EFI_INVALID_TABLE_ADDR;
 
@@ -536,7 +537,7 @@ efi_init (void)
        if (palo_phys != EFI_INVALID_TABLE_ADDR)
                handle_palo(palo_phys);
 
-       runtime = __va(efi.systab->runtime);
+       runtime = __va(efi_systab->runtime);
        efi.get_time = phys_get_time;
        efi.set_time = phys_set_time;
        efi.get_wakeup_time = phys_get_wakeup_time;