diff --git a/[refs] b/[refs] index 9567b0143e7d..eb8ff5c298bf 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ec376a2ab97ec3be52ca282dc6ac102e805d1005 +refs/heads/master: 6f389a8f1dd22a24f3d9afc2812b30d639e94625 diff --git a/trunk/kernel/sys.c b/trunk/kernel/sys.c index 39c9c4a2949f..0da73cf73e60 100644 --- a/trunk/kernel/sys.c +++ b/trunk/kernel/sys.c @@ -324,7 +324,6 @@ void kernel_restart_prepare(char *cmd) system_state = SYSTEM_RESTART; usermodehelper_disable(); device_shutdown(); - syscore_shutdown(); } /** @@ -370,6 +369,7 @@ void kernel_restart(char *cmd) { kernel_restart_prepare(cmd); disable_nonboot_cpus(); + syscore_shutdown(); if (!cmd) printk(KERN_EMERG "Restarting system.\n"); else @@ -395,6 +395,7 @@ static void kernel_shutdown_prepare(enum system_states state) void kernel_halt(void) { kernel_shutdown_prepare(SYSTEM_HALT); + disable_nonboot_cpus(); syscore_shutdown(); printk(KERN_EMERG "System halted.\n"); kmsg_dump(KMSG_DUMP_HALT);