summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2005-06-21 17:16:28 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-21 19:07:33 -0700
commit77eb65cbc18d86a9c334964ed4c3d178f5560918 (patch)
tree71b151e51625ce541398cac5280f4dd2dae072d4
parent14651c798a2a4d15ccc53d064df28bfd0283bad6 (diff)
downloadlinux-exynos-77eb65cbc18d86a9c334964ed4c3d178f5560918.tar.gz
linux-exynos-77eb65cbc18d86a9c334964ed4c3d178f5560918.tar.bz2
linux-exynos-77eb65cbc18d86a9c334964ed4c3d178f5560918.zip
[PATCH] s390: kernel stack overflow panic
die() doesn't return, therefore print registers and then panic instead. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--arch/s390/kernel/traps.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/s390/kernel/traps.c b/arch/s390/kernel/traps.c
index 8b90e9528b91..ca34b6f34b38 100644
--- a/arch/s390/kernel/traps.c
+++ b/arch/s390/kernel/traps.c
@@ -668,7 +668,10 @@ asmlinkage void space_switch_exception(struct pt_regs * regs, long int_code)
asmlinkage void kernel_stack_overflow(struct pt_regs * regs)
{
- die("Kernel stack overflow", regs, 0);
+ bust_spinlocks(1);
+ printk("Kernel stack overflow.\n");
+ show_regs(regs);
+ bust_spinlocks(0);
panic("Corrupt kernel stack, can't continue.");
}