aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/reboot.h
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2005-07-26 11:29:55 -0600
committerLinus Torvalds <torvalds@g5.osdl.org>2005-07-26 14:35:41 -0700
commit7c9034735eccbf82608a4602c59aaf6053ea9416 (patch)
tree219e8cd4b5cfffeb261f42a2bd8e512be19cba40 /include/linux/reboot.h
parentabcd9e51f5b832439b119d530db1353c12fd4073 (diff)
downloadmrst-s0i3-test-7c9034735eccbf82608a4602c59aaf6053ea9416.tar.gz
mrst-s0i3-test-7c9034735eccbf82608a4602c59aaf6053ea9416.tar.xz
mrst-s0i3-test-7c9034735eccbf82608a4602c59aaf6053ea9416.zip
[PATCH] Add emergency_restart()
When the kernel is working well and we want to restart cleanly kernel_restart is the function to use. But in many instances the kernel wants to reboot when thing are expected to be working very badly such as from panic or a software watchdog handler. This patch adds the function emergency_restart() so that callers can be clear what semantics they expect when calling restart. emergency_restart() is expected to be callable from interrupt context and possibly reliable in even more trying circumstances. This is an initial generic implementation for all architectures. Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux/reboot.h')
-rw-r--r--include/linux/reboot.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/reboot.h b/include/linux/reboot.h
index 828ba4f107d..3b3266ff1a9 100644
--- a/include/linux/reboot.h
+++ b/include/linux/reboot.h
@@ -64,6 +64,13 @@ extern void kernel_halt(void);
extern void kernel_power_off(void);
extern void kernel_kexec(void);
+/*
+ * Emergency restart, callable from an interrupt handler.
+ */
+
+extern void emergency_restart(void);
+#include <asm/emergency-restart.h>
+
#endif
#endif /* _LINUX_REBOOT_H */