diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2005-07-26 11:29:55 -0600 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-26 14:35:41 -0700 |
commit | 7c9034735eccbf82608a4602c59aaf6053ea9416 (patch) | |
tree | 219e8cd4b5cfffeb261f42a2bd8e512be19cba40 /include/linux/reboot.h | |
parent | abcd9e51f5b832439b119d530db1353c12fd4073 (diff) | |
download | linux-7c9034735eccbf82608a4602c59aaf6053ea9416.tar.gz linux-7c9034735eccbf82608a4602c59aaf6053ea9416.tar.bz2 linux-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.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/reboot.h b/include/linux/reboot.h index 828ba4f107d9..3b3266ff1a95 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 */ |