X-Git-Url: https://git.kernelconcepts.de/?a=blobdiff_plain;f=kernel%2Fsys.c;h=0da73cf73e60937ba8eb65a77f20febcb8264c45;hb=fd7fc253289c419615c1c8bbe418598019567392;hp=39c9c4a2949f3166b114f11534957ff2f6060565;hpb=5f948722cd2f797bb2ce7684e72336a5edd149a6;p=karo-tx-linux.git diff --git a/kernel/sys.c b/kernel/sys.c index 39c9c4a2949f..0da73cf73e60 100644 --- a/kernel/sys.c +++ b/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);