x86, reboot: Only use CF9_COND automatically, not CF9
authorH. Peter Anvin <hpa@linux.intel.com>
Wed, 5 Mar 2014 23:41:15 +0000 (15:41 -0800)
committerH. Peter Anvin <hpa@linux.intel.com>
Wed, 5 Mar 2014 23:41:15 +0000 (15:41 -0800)
Only CF9_COND is appropriate for inclusion in the default chain, not
CF9; the latter will poke that register unconditionally, whereas
CF9_COND will at least look for PCI configuration method #1 or #2
first (a weak check, but better than nothing.)

CF9 should be used for explicit system configuration (command line or
DMI) only.

Cc: Aubrey Li <aubrey.li@intel.com>
Cc: Matthew Garrett <mjg59@srcf.ucam.org>
Link: http://lkml.kernel.org/r/53130A46.1010801@linux.intel.com
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
arch/x86/kernel/reboot.c

index f6012953e0d8895d29e9b07d8a22482fb27ccf57..654b46574b916c20ac4472aace3ffe4165f131fd 100644 (file)
@@ -535,7 +535,7 @@ static void native_machine_emergency_restart(void)
                                                 EFI_RESET_WARM :
                                                 EFI_RESET_COLD,
                                                 EFI_SUCCESS, 0, NULL);
-                       reboot_type = BOOT_CF9;
+                       reboot_type = BOOT_CF9_COND;
                        break;
 
                case BOOT_CF9: