diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2007-06-19 13:10:05 +0200 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2007-06-19 13:10:20 +0200 |
commit | bca0fb8683b7406d3056dc53a14b0a482c367e2b (patch) | |
tree | 9c42ec8d7c927766e2d7c6a74b6875f08156db5b /arch/s390/kernel | |
parent | 0fc9bbf771ce7d41ed33300e75e74e922dde1c38 (diff) |
[S390] Add oops_enter()/oops_exit() calls to die().
This is mainly to switch off all potentially debugging stuff that
won't report anything useful after an oops happened.
Besided that setting pause_on_oops will work too, but doesn't make
too much sense on s390.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel')
-rw-r--r-- | arch/s390/kernel/traps.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/arch/s390/kernel/traps.c b/arch/s390/kernel/traps.c index 1d8c92740cc..ee9186f8fb0 100644 --- a/arch/s390/kernel/traps.c +++ b/arch/s390/kernel/traps.c @@ -253,20 +253,22 @@ void die(const char * str, struct pt_regs * regs, long err) { static int die_counter; + oops_enter(); debug_stop_all(); console_verbose(); spin_lock_irq(&die_lock); bust_spinlocks(1); printk("%s: %04lx [#%d]\n", str, err & 0xffff, ++die_counter); print_modules(); - show_regs(regs); + show_regs(regs); bust_spinlocks(0); - spin_unlock_irq(&die_lock); + spin_unlock_irq(&die_lock); if (in_interrupt()) panic("Fatal exception in interrupt"); if (panic_on_oops) panic("Fatal exception: panic_on_oops"); - do_exit(SIGSEGV); + oops_exit(); + do_exit(SIGSEGV); } static void inline |