xref: /linux-6.15/arch/um/kernel/reboot.c (revision 6aa802ce)
1 /*
2  * Copyright (C) 2000, 2002 Jeff Dike ([email protected])
3  * Licensed under the GPL
4  */
5 
6 #include "linux/module.h"
7 #include "linux/sched.h"
8 #include "asm/smp.h"
9 #include "kern_util.h"
10 #include "kern.h"
11 #include "os.h"
12 #include "mode.h"
13 
14 void (*pm_power_off)(void);
15 
16 static void kill_off_processes(void)
17 {
18 	kill_off_processes_skas();
19 }
20 
21 void uml_cleanup(void)
22 {
23         kmalloc_ok = 0;
24 	do_uml_exitcalls();
25 	kill_off_processes();
26 }
27 
28 void machine_restart(char * __unused)
29 {
30         uml_cleanup();
31 	reboot_skas();
32 }
33 
34 void machine_power_off(void)
35 {
36         uml_cleanup();
37 	halt_skas();
38 }
39 
40 void machine_halt(void)
41 {
42 	machine_power_off();
43 }
44