diff options
Diffstat (limited to 'arch/mn10300')
-rw-r--r-- | arch/mn10300/kernel/traps.c | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/arch/mn10300/kernel/traps.c b/arch/mn10300/kernel/traps.c index 681ad8c9e4fb..0dfdc5001124 100644 --- a/arch/mn10300/kernel/traps.c +++ b/arch/mn10300/kernel/traps.c | |||
@@ -136,8 +136,7 @@ void show_trace(unsigned long *sp) | |||
136 | unsigned long *stack, addr, module_start, module_end; | 136 | unsigned long *stack, addr, module_start, module_end; |
137 | int i; | 137 | int i; |
138 | 138 | ||
139 | printk(KERN_EMERG "\n" | 139 | printk(KERN_EMERG "\nCall Trace:"); |
140 | KERN_EMERG "Call Trace:"); | ||
141 | 140 | ||
142 | stack = sp; | 141 | stack = sp; |
143 | i = 0; | 142 | i = 0; |
@@ -153,7 +152,7 @@ void show_trace(unsigned long *sp) | |||
153 | printk("\n"); | 152 | printk("\n"); |
154 | #else | 153 | #else |
155 | if ((i % 6) == 0) | 154 | if ((i % 6) == 0) |
156 | printk("\n" KERN_EMERG " "); | 155 | printk(KERN_EMERG " "); |
157 | printk("[<%08lx>] ", addr); | 156 | printk("[<%08lx>] ", addr); |
158 | i++; | 157 | i++; |
159 | #endif | 158 | #endif |
@@ -180,7 +179,7 @@ void show_stack(struct task_struct *task, unsigned long *sp) | |||
180 | if (((long) stack & (THREAD_SIZE - 1)) == 0) | 179 | if (((long) stack & (THREAD_SIZE - 1)) == 0) |
181 | break; | 180 | break; |
182 | if ((i % 8) == 0) | 181 | if ((i % 8) == 0) |
183 | printk("\n" KERN_EMERG " "); | 182 | printk(KERN_EMERG " "); |
184 | printk("%08lx ", *stack++); | 183 | printk("%08lx ", *stack++); |
185 | } | 184 | } |
186 | 185 | ||
@@ -264,8 +263,7 @@ void show_registers(struct pt_regs *regs) | |||
264 | show_stack(current, (unsigned long *) sp); | 263 | show_stack(current, (unsigned long *) sp); |
265 | 264 | ||
266 | #if 0 | 265 | #if 0 |
267 | printk(KERN_EMERG "\n" | 266 | printk(KERN_EMERG "\nCode: "); |
268 | KERN_EMERG "Code: "); | ||
269 | if (regs->pc < PAGE_OFFSET) | 267 | if (regs->pc < PAGE_OFFSET) |
270 | goto bad; | 268 | goto bad; |
271 | 269 | ||
@@ -311,16 +309,14 @@ void die(const char *str, struct pt_regs *regs, enum exception_code code) | |||
311 | { | 309 | { |
312 | console_verbose(); | 310 | console_verbose(); |
313 | spin_lock_irq(&die_lock); | 311 | spin_lock_irq(&die_lock); |
314 | printk(KERN_EMERG "\n" | 312 | printk(KERN_EMERG "\n%s: %04x\n", |
315 | KERN_EMERG "%s: %04x\n", | ||
316 | str, code & 0xffff); | 313 | str, code & 0xffff); |
317 | show_registers(regs); | 314 | show_registers(regs); |
318 | 315 | ||
319 | if (regs->pc >= 0x02000000 && regs->pc < 0x04000000 && | 316 | if (regs->pc >= 0x02000000 && regs->pc < 0x04000000 && |
320 | (regs->epsw & (EPSW_IM | EPSW_IE)) != (EPSW_IM | EPSW_IE)) { | 317 | (regs->epsw & (EPSW_IM | EPSW_IE)) != (EPSW_IM | EPSW_IE)) { |
321 | printk(KERN_EMERG "Exception in usermode interrupt handler\n"); | 318 | printk(KERN_EMERG "Exception in usermode interrupt handler\n"); |
322 | printk(KERN_EMERG "\n" | 319 | printk(KERN_EMERG "\nPlease connect to kernel debugger !!\n"); |
323 | KERN_EMERG " Please connect to kernel debugger !!\n"); | ||
324 | asm volatile ("0: bra 0b"); | 320 | asm volatile ("0: bra 0b"); |
325 | } | 321 | } |
326 | 322 | ||
@@ -429,9 +425,8 @@ asmlinkage void io_bus_error(u32 bcberr, u32 bcbear, struct pt_regs *regs) | |||
429 | { | 425 | { |
430 | console_verbose(); | 426 | console_verbose(); |
431 | 427 | ||
432 | printk(KERN_EMERG "\n" | 428 | printk(KERN_EMERG "Asynchronous I/O Bus Error\n"); |
433 | KERN_EMERG "Asynchronous I/O Bus Error\n" | 429 | printk(KERN_EMERG "==========================\n"); |
434 | KERN_EMERG "==========================\n"); | ||
435 | 430 | ||
436 | if (bcberr & BCBERR_BEME) | 431 | if (bcberr & BCBERR_BEME) |
437 | printk(KERN_EMERG "- Multiple recorded errors\n"); | 432 | printk(KERN_EMERG "- Multiple recorded errors\n"); |