mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-28 20:02:17 +00:00
x86: default to reboot via ACPI
Triple-fault and keyboard reset may assert INIT instead of RESET; however INIT is blocked when Intel VT is enabled. This leads to a partially reset machine when invoking emergency_restart via sysrq-b: the processor is still working but other parts of the system are dead. Default to rebooting via ACPI, which correctly asserts RESET and reboots the machine. This is safe since we will fall back to keyboard reset and triple fault if acpi is not enabled or if the reset is not successful. Signed-off-by: Avi Kivity <avi@qumranet.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
83097aca85
commit
c7ffa6c262
1 changed files with 5 additions and 1 deletions
|
@ -29,7 +29,11 @@ EXPORT_SYMBOL(pm_power_off);
|
||||||
|
|
||||||
static const struct desc_ptr no_idt = {};
|
static const struct desc_ptr no_idt = {};
|
||||||
static int reboot_mode;
|
static int reboot_mode;
|
||||||
enum reboot_type reboot_type = BOOT_KBD;
|
/*
|
||||||
|
* Keyboard reset and triple fault may result in INIT, not RESET, which
|
||||||
|
* doesn't work when we're in vmx root mode. Try ACPI first.
|
||||||
|
*/
|
||||||
|
enum reboot_type reboot_type = BOOT_ACPI;
|
||||||
int reboot_force;
|
int reboot_force;
|
||||||
|
|
||||||
#if defined(CONFIG_X86_32) && defined(CONFIG_SMP)
|
#if defined(CONFIG_X86_32) && defined(CONFIG_SMP)
|
||||||
|
|
Loading…
Reference in a new issue