aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel/traps.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/s390/kernel/traps.c')
-rw-r--r--arch/s390/kernel/traps.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/s390/kernel/traps.c b/arch/s390/kernel/traps.c
index cbfe73034c30..ee9186f8fb08 100644
--- a/arch/s390/kernel/traps.c
+++ b/arch/s390/kernel/traps.c
@@ -253,19 +253,22 @@ void die(const char * str, struct pt_regs * regs, long err)
253{ 253{
254 static int die_counter; 254 static int die_counter;
255 255
256 oops_enter();
256 debug_stop_all(); 257 debug_stop_all();
257 console_verbose(); 258 console_verbose();
258 spin_lock_irq(&die_lock); 259 spin_lock_irq(&die_lock);
259 bust_spinlocks(1); 260 bust_spinlocks(1);
260 printk("%s: %04lx [#%d]\n", str, err & 0xffff, ++die_counter); 261 printk("%s: %04lx [#%d]\n", str, err & 0xffff, ++die_counter);
261 show_regs(regs); 262 print_modules();
263 show_regs(regs);
262 bust_spinlocks(0); 264 bust_spinlocks(0);
263 spin_unlock_irq(&die_lock); 265 spin_unlock_irq(&die_lock);
264 if (in_interrupt()) 266 if (in_interrupt())
265 panic("Fatal exception in interrupt"); 267 panic("Fatal exception in interrupt");
266 if (panic_on_oops) 268 if (panic_on_oops)
267 panic("Fatal exception: panic_on_oops"); 269 panic("Fatal exception: panic_on_oops");
268 do_exit(SIGSEGV); 270 oops_exit();
271 do_exit(SIGSEGV);
269} 272}
270 273
271static void inline 274static void inline