From c935db86bfdd6c009a1b7222f99cef3c81bb6d6e Mon Sep 17 00:00:00 2001 From: "Eric W. Biederman" Date: Tue, 26 Jul 2005 11:29:55 -0600 Subject: [PATCH] --- yaml --- r: 5042 b: refs/heads/master c: 7c9034735eccbf82608a4602c59aaf6053ea9416 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/include/asm-alpha/emergency-restart.h | 6 ++++++ trunk/include/asm-arm/emergency-restart.h | 6 ++++++ trunk/include/asm-arm26/emergency-restart.h | 6 ++++++ trunk/include/asm-cris/emergency-restart.h | 6 ++++++ trunk/include/asm-frv/emergency-restart.h | 6 ++++++ trunk/include/asm-generic/emergency-restart.h | 9 +++++++++ trunk/include/asm-h8300/emergency-restart.h | 6 ++++++ trunk/include/asm-i386/emergency-restart.h | 6 ++++++ trunk/include/asm-ia64/emergency-restart.h | 6 ++++++ trunk/include/asm-m32r/emergency-restart.h | 6 ++++++ trunk/include/asm-m68k/emergency-restart.h | 6 ++++++ trunk/include/asm-m68knommu/emergency-restart.h | 6 ++++++ trunk/include/asm-mips/emergency-restart.h | 6 ++++++ trunk/include/asm-parisc/emergency-restart.h | 6 ++++++ trunk/include/asm-ppc/emergency-restart.h | 6 ++++++ trunk/include/asm-ppc64/emergency-restart.h | 6 ++++++ trunk/include/asm-s390/emergency-restart.h | 6 ++++++ trunk/include/asm-sh/emergency-restart.h | 6 ++++++ trunk/include/asm-sh64/emergency-restart.h | 6 ++++++ trunk/include/asm-sparc/emergency-restart.h | 6 ++++++ trunk/include/asm-sparc64/emergency-restart.h | 6 ++++++ trunk/include/asm-um/emergency-restart.h | 6 ++++++ trunk/include/asm-v850/emergency-restart.h | 6 ++++++ trunk/include/asm-x86_64/emergency-restart.h | 6 ++++++ trunk/include/asm-xtensa/emergency-restart.h | 6 ++++++ trunk/include/linux/reboot.h | 7 +++++++ trunk/kernel/sys.c | 6 ++++++ 28 files changed, 167 insertions(+), 1 deletion(-) create mode 100644 trunk/include/asm-alpha/emergency-restart.h create mode 100644 trunk/include/asm-arm/emergency-restart.h create mode 100644 trunk/include/asm-arm26/emergency-restart.h create mode 100644 trunk/include/asm-cris/emergency-restart.h create mode 100644 trunk/include/asm-frv/emergency-restart.h create mode 100644 trunk/include/asm-generic/emergency-restart.h create mode 100644 trunk/include/asm-h8300/emergency-restart.h create mode 100644 trunk/include/asm-i386/emergency-restart.h create mode 100644 trunk/include/asm-ia64/emergency-restart.h create mode 100644 trunk/include/asm-m32r/emergency-restart.h create mode 100644 trunk/include/asm-m68k/emergency-restart.h create mode 100644 trunk/include/asm-m68knommu/emergency-restart.h create mode 100644 trunk/include/asm-mips/emergency-restart.h create mode 100644 trunk/include/asm-parisc/emergency-restart.h create mode 100644 trunk/include/asm-ppc/emergency-restart.h create mode 100644 trunk/include/asm-ppc64/emergency-restart.h create mode 100644 trunk/include/asm-s390/emergency-restart.h create mode 100644 trunk/include/asm-sh/emergency-restart.h create mode 100644 trunk/include/asm-sh64/emergency-restart.h create mode 100644 trunk/include/asm-sparc/emergency-restart.h create mode 100644 trunk/include/asm-sparc64/emergency-restart.h create mode 100644 trunk/include/asm-um/emergency-restart.h create mode 100644 trunk/include/asm-v850/emergency-restart.h create mode 100644 trunk/include/asm-x86_64/emergency-restart.h create mode 100644 trunk/include/asm-xtensa/emergency-restart.h diff --git a/[refs] b/[refs] index dff799aab60b..e33f87192a3e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: abcd9e51f5b832439b119d530db1353c12fd4073 +refs/heads/master: 7c9034735eccbf82608a4602c59aaf6053ea9416 diff --git a/trunk/include/asm-alpha/emergency-restart.h b/trunk/include/asm-alpha/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-alpha/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-arm/emergency-restart.h b/trunk/include/asm-arm/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-arm/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-arm26/emergency-restart.h b/trunk/include/asm-arm26/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-arm26/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-cris/emergency-restart.h b/trunk/include/asm-cris/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-cris/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-frv/emergency-restart.h b/trunk/include/asm-frv/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-frv/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-generic/emergency-restart.h b/trunk/include/asm-generic/emergency-restart.h new file mode 100644 index 000000000000..0d68a1eae985 --- /dev/null +++ b/trunk/include/asm-generic/emergency-restart.h @@ -0,0 +1,9 @@ +#ifndef _ASM_GENERIC_EMERGENCY_RESTART_H +#define _ASM_GENERIC_EMERGENCY_RESTART_H + +static inline void machine_emergency_restart(void) +{ + machine_restart(NULL); +} + +#endif /* _ASM_GENERIC_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-h8300/emergency-restart.h b/trunk/include/asm-h8300/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-h8300/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-i386/emergency-restart.h b/trunk/include/asm-i386/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-i386/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-ia64/emergency-restart.h b/trunk/include/asm-ia64/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-ia64/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-m32r/emergency-restart.h b/trunk/include/asm-m32r/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-m32r/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-m68k/emergency-restart.h b/trunk/include/asm-m68k/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-m68k/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-m68knommu/emergency-restart.h b/trunk/include/asm-m68knommu/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-m68knommu/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-mips/emergency-restart.h b/trunk/include/asm-mips/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-mips/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-parisc/emergency-restart.h b/trunk/include/asm-parisc/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-parisc/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-ppc/emergency-restart.h b/trunk/include/asm-ppc/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-ppc/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-ppc64/emergency-restart.h b/trunk/include/asm-ppc64/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-ppc64/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-s390/emergency-restart.h b/trunk/include/asm-s390/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-s390/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-sh/emergency-restart.h b/trunk/include/asm-sh/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-sh/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-sh64/emergency-restart.h b/trunk/include/asm-sh64/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-sh64/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-sparc/emergency-restart.h b/trunk/include/asm-sparc/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-sparc/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-sparc64/emergency-restart.h b/trunk/include/asm-sparc64/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-sparc64/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-um/emergency-restart.h b/trunk/include/asm-um/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-um/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-v850/emergency-restart.h b/trunk/include/asm-v850/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-v850/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-x86_64/emergency-restart.h b/trunk/include/asm-x86_64/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-x86_64/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/asm-xtensa/emergency-restart.h b/trunk/include/asm-xtensa/emergency-restart.h new file mode 100644 index 000000000000..108d8c48e42e --- /dev/null +++ b/trunk/include/asm-xtensa/emergency-restart.h @@ -0,0 +1,6 @@ +#ifndef _ASM_EMERGENCY_RESTART_H +#define _ASM_EMERGENCY_RESTART_H + +#include + +#endif /* _ASM_EMERGENCY_RESTART_H */ diff --git a/trunk/include/linux/reboot.h b/trunk/include/linux/reboot.h index 828ba4f107d9..3b3266ff1a95 100644 --- a/trunk/include/linux/reboot.h +++ b/trunk/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 + #endif #endif /* _LINUX_REBOOT_H */ diff --git a/trunk/kernel/sys.c b/trunk/kernel/sys.c index 31ac41a73329..a74039036fb4 100644 --- a/trunk/kernel/sys.c +++ b/trunk/kernel/sys.c @@ -361,6 +361,12 @@ asmlinkage long sys_getpriority(int which, int who) return retval; } +void emergency_restart(void) +{ + machine_emergency_restart(); +} +EXPORT_SYMBOL_GPL(emergency_restart); + void kernel_restart(char *cmd) { notifier_call_chain(&reboot_notifier_list, SYS_RESTART, cmd);