diff options
Diffstat (limited to 'arch/um/kernel/reboot.c')
-rw-r--r-- | arch/um/kernel/reboot.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/arch/um/kernel/reboot.c b/arch/um/kernel/reboot.c index 207f89d74908..fcec51da1d37 100644 --- a/arch/um/kernel/reboot.c +++ b/arch/um/kernel/reboot.c | |||
@@ -38,14 +38,14 @@ static void kill_off_processes(void) | |||
38 | 38 | ||
39 | void uml_cleanup(void) | 39 | void uml_cleanup(void) |
40 | { | 40 | { |
41 | kill_off_processes(); | 41 | kmalloc_ok = 0; |
42 | do_uml_exitcalls(); | 42 | do_uml_exitcalls(); |
43 | kill_off_processes(); | ||
43 | } | 44 | } |
44 | 45 | ||
45 | void machine_restart(char * __unused) | 46 | void machine_restart(char * __unused) |
46 | { | 47 | { |
47 | do_uml_exitcalls(); | 48 | uml_cleanup(); |
48 | kill_off_processes(); | ||
49 | CHOOSE_MODE(reboot_tt(), reboot_skas()); | 49 | CHOOSE_MODE(reboot_tt(), reboot_skas()); |
50 | } | 50 | } |
51 | 51 | ||
@@ -53,8 +53,7 @@ EXPORT_SYMBOL(machine_restart); | |||
53 | 53 | ||
54 | void machine_power_off(void) | 54 | void machine_power_off(void) |
55 | { | 55 | { |
56 | do_uml_exitcalls(); | 56 | uml_cleanup(); |
57 | kill_off_processes(); | ||
58 | CHOOSE_MODE(halt_tt(), halt_skas()); | 57 | CHOOSE_MODE(halt_tt(), halt_skas()); |
59 | } | 58 | } |
60 | 59 | ||