diff options
Diffstat (limited to 'arch/arm/kernel/traps.c')
| -rw-r--r-- | arch/arm/kernel/traps.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c index 99a572702509..f84dfe67724f 100644 --- a/arch/arm/kernel/traps.c +++ b/arch/arm/kernel/traps.c | |||
| @@ -266,6 +266,7 @@ void die(const char *str, struct pt_regs *regs, int err) | |||
| 266 | { | 266 | { |
| 267 | struct thread_info *thread = current_thread_info(); | 267 | struct thread_info *thread = current_thread_info(); |
| 268 | int ret; | 268 | int ret; |
| 269 | enum bug_trap_type bug_type = BUG_TRAP_TYPE_NONE; | ||
| 269 | 270 | ||
| 270 | oops_enter(); | 271 | oops_enter(); |
| 271 | 272 | ||
| @@ -273,7 +274,9 @@ void die(const char *str, struct pt_regs *regs, int err) | |||
| 273 | console_verbose(); | 274 | console_verbose(); |
| 274 | bust_spinlocks(1); | 275 | bust_spinlocks(1); |
| 275 | if (!user_mode(regs)) | 276 | if (!user_mode(regs)) |
| 276 | report_bug(regs->ARM_pc, regs); | 277 | bug_type = report_bug(regs->ARM_pc, regs); |
| 278 | if (bug_type != BUG_TRAP_TYPE_NONE) | ||
| 279 | str = "Oops - BUG"; | ||
| 277 | ret = __die(str, err, thread, regs); | 280 | ret = __die(str, err, thread, regs); |
| 278 | 281 | ||
| 279 | if (regs && kexec_should_crash(thread->task)) | 282 | if (regs && kexec_should_crash(thread->task)) |
