Change to checking for EFI Boot type from previous check on if this is a KDUMP kernel. This allows for KDUMP kernels that can handle EFI reboots.
Signed-off-by: Mike Travis <mike.tra...@hpe.com> Reviewed-by: Steve Wahl <steve.w...@hpe.com> Reviewed-by: Dimitri Sivanich <dimitri.sivan...@hpe.com> To: Thomas Gleixner <t...@linutronix.de> To: Ingo Molnar <mi...@redhat.com> To: H. Peter Anvin <h...@zytor.com> To: Andrew Morton <a...@linux-foundation.org> To: Borislav Petkov <b...@alien8.de> To: Christoph Hellwig <h...@infradead.org> To: Sasha Levin <sas...@kernel.org> Cc: Dimitri Sivanich <dimitri.sivan...@hpe.com> Cc: Russ Anderson <russ.ander...@hpe.com> Cc: Hedi Berriche <hedi.berri...@hpe.com> Cc: Steve Wahl <steve.w...@hpe.com> Cc: Justin Ernst <justin.er...@hpe.com> Cc: x...@kernel.org Cc: linux-kernel@vger.kernel.org --- arch/x86/kernel/apic/x2apic_uv_x.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) --- linux.orig/arch/x86/kernel/apic/x2apic_uv_x.c +++ linux/arch/x86/kernel/apic/x2apic_uv_x.c @@ -15,6 +15,7 @@ #include <linux/export.h> #include <linux/pci.h> #include <linux/acpi.h> +#include <linux/efi.h> #include <asm/e820/api.h> #include <asm/uv/uv_mmrs.h> @@ -1483,6 +1484,14 @@ static void __init build_socket_tables(v } } +/* Check which reboot to use */ +static void check_efi_reboot(void) +{ + /* If EFI reboot not available, use ACPI reboot */ + if (!efi_enabled(EFI_BOOT)) + reboot_type = BOOT_ACPI; +} + /* Setup user proc fs files */ static int proc_hubbed_show(struct seq_file *file, void *data) { @@ -1571,6 +1580,8 @@ static __init int uv_system_init_hubless if (rc >= 0) uv_setup_proc_files(1); + check_efi_reboot(); + return rc; } @@ -1704,12 +1715,7 @@ static void __init uv_system_init_hub(vo /* Register Legacy VGA I/O redirection handler: */ pci_register_set_vga_state(uv_set_vga_state); - /* - * For a kdump kernel the reset must be BOOT_ACPI, not BOOT_EFI, as - * EFI is not enabled in the kdump kernel: - */ - if (is_kdump_kernel()) - reboot_type = BOOT_ACPI; + check_efi_reboot(); } /* --