diff --git a/[refs] b/[refs] index fbc260438a33..6d7c87f5978f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7c9a90073c75bffbb89763a0c7d44a2e44e9e628 +refs/heads/master: 62b3a04d75d2dc9480d5ad3b60f4258e548a6a83 diff --git a/trunk/arch/x86_64/kernel/reboot.c b/trunk/arch/x86_64/kernel/reboot.c index d4c45ff92d5c..3d1cc09406a6 100644 --- a/trunk/arch/x86_64/kernel/reboot.c +++ b/trunk/arch/x86_64/kernel/reboot.c @@ -109,16 +109,10 @@ void machine_shutdown(void) local_irq_enable(); } -void machine_restart(char * __unused) +void machine_emergency_restart(void) { int i; - printk("machine restart\n"); - - if (!reboot_force) { - machine_shutdown(); - } - /* Tell the BIOS if we want cold or warm reboot */ *((unsigned short *)__va(0x472)) = reboot_mode; @@ -143,6 +137,16 @@ void machine_restart(char * __unused) } } +void machine_restart(char * __unused) +{ + printk("machine restart\n"); + + if (!reboot_force) { + machine_shutdown(); + } + machine_emergency_restart(); +} + void machine_halt(void) { } diff --git a/trunk/include/asm-x86_64/emergency-restart.h b/trunk/include/asm-x86_64/emergency-restart.h index 108d8c48e42e..680c39563345 100644 --- a/trunk/include/asm-x86_64/emergency-restart.h +++ b/trunk/include/asm-x86_64/emergency-restart.h @@ -1,6 +1,6 @@ #ifndef _ASM_EMERGENCY_RESTART_H #define _ASM_EMERGENCY_RESTART_H -#include +extern void machine_emergency_restart(void); #endif /* _ASM_EMERGENCY_RESTART_H */