Skip to content

Commit

Permalink
sh: update die() output.
Browse files Browse the repository at this point in the history
This follows the ARM change, as SH had all of the same issues:

Make die() better match x86:
- add printing of the last accessed sysfs file
- ensure console_verbose() is called under the lock
- ensure we panic outside of oops_exit()

Signed-off-by: Paul Mundt <[email protected]>
  • Loading branch information
pmundt committed Oct 13, 2009
1 parent 2caa731 commit af67c3a
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions arch/sh/kernel/traps_32.c
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
#include <linux/kexec.h>
#include <linux/limits.h>
#include <linux/proc_fs.h>
#include <linux/sysfs.h>
#include <asm/system.h>
#include <asm/uaccess.h>
#include <asm/fpu.h>
Expand Down Expand Up @@ -159,12 +160,12 @@ void die(const char * str, struct pt_regs * regs, long err)

oops_enter();

console_verbose();
spin_lock_irq(&die_lock);
console_verbose();
bust_spinlocks(1);

printk("%s: %04lx [#%d]\n", str, err & 0xffff, ++die_counter);

sysfs_printk_last_file();
print_modules();
show_regs(regs);

Expand All @@ -180,6 +181,7 @@ void die(const char * str, struct pt_regs * regs, long err)
bust_spinlocks(0);
add_taint(TAINT_DIE);
spin_unlock_irq(&die_lock);
oops_exit();

if (kexec_should_crash(current))
crash_kexec(regs);
Expand All @@ -190,7 +192,6 @@ void die(const char * str, struct pt_regs * regs, long err)
if (panic_on_oops)
panic("Fatal exception");

oops_exit();
do_exit(SIGSEGV);
}

Expand Down

0 comments on commit af67c3a

Please sign in to comment.