summaryrefslogtreecommitdiffstats
path: root/kernel/panic.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/panic.c')
-rw-r--r--kernel/panic.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/kernel/panic.c b/kernel/panic.c
index 4ba287e05..140c6bad2 100644
--- a/kernel/panic.c
+++ b/kernel/panic.c
@@ -20,6 +20,10 @@
#include <linux/sysrq.h>
#include <linux/interrupt.h>
+#ifdef __alpha__
+#include <asm/machvec.h>
+#endif
+
asmlinkage void sys_sync(void); /* it's really int */
extern void unblank_console(void);
extern int C_A_D;
@@ -28,7 +32,7 @@ int panic_timeout = 0;
struct notifier_block *panic_notifier_list = NULL;
-__initfunc(void panic_setup(char *str, int *ints))
+void __init panic_setup(char *str, int *ints)
{
if (ints[0] == 1)
panic_timeout = ints[1];
@@ -76,7 +80,10 @@ NORET_TYPE void panic(const char * fmt, ...)
#ifdef __sparc__
printk("Press L1-A to return to the boot prom\n");
#endif
-
+#ifdef __alpha__
+ if (alpha_using_srm)
+ halt();
+#endif
sti();
for(;;) {
CHECK_EMERGENCY_SYNC