Loading arch/blackfin/kernel/traps.c +11 −0 Original line number Diff line number Diff line Loading @@ -196,6 +196,11 @@ static void decode_address(char *buf, unsigned long address) asmlinkage void double_fault_c(struct pt_regs *fp) { #ifdef CONFIG_DEBUG_BFIN_HWTRACE_ON int j; trace_buffer_save(j); #endif console_verbose(); oops_in_progress = 1; #ifdef CONFIG_DEBUG_VERBOSE Loading @@ -220,6 +225,7 @@ asmlinkage void double_fault_c(struct pt_regs *fp) dump_bfin_process(fp); dump_bfin_mem(fp); show_regs(fp); dump_bfin_trace_buffer(); } #endif panic("Double Fault - unrecoverable event"); Loading Loading @@ -832,6 +838,11 @@ void show_stack(struct task_struct *task, unsigned long *stack) decode_address(buf, (unsigned int)stack); printk(KERN_NOTICE " SP: [0x%p] %s\n", stack, buf); if (!access_ok(VERIFY_READ, stack, (unsigned int)endstack - (unsigned int)stack)) { printk(KERN_NOTICE "Invalid stack pointer\n"); return; } /* First thing is to look for a frame pointer */ for (addr = (unsigned int *)((unsigned int)stack & ~0xF); addr < endstack; addr++) { if (*addr & 0x1) Loading Loading
arch/blackfin/kernel/traps.c +11 −0 Original line number Diff line number Diff line Loading @@ -196,6 +196,11 @@ static void decode_address(char *buf, unsigned long address) asmlinkage void double_fault_c(struct pt_regs *fp) { #ifdef CONFIG_DEBUG_BFIN_HWTRACE_ON int j; trace_buffer_save(j); #endif console_verbose(); oops_in_progress = 1; #ifdef CONFIG_DEBUG_VERBOSE Loading @@ -220,6 +225,7 @@ asmlinkage void double_fault_c(struct pt_regs *fp) dump_bfin_process(fp); dump_bfin_mem(fp); show_regs(fp); dump_bfin_trace_buffer(); } #endif panic("Double Fault - unrecoverable event"); Loading Loading @@ -832,6 +838,11 @@ void show_stack(struct task_struct *task, unsigned long *stack) decode_address(buf, (unsigned int)stack); printk(KERN_NOTICE " SP: [0x%p] %s\n", stack, buf); if (!access_ok(VERIFY_READ, stack, (unsigned int)endstack - (unsigned int)stack)) { printk(KERN_NOTICE "Invalid stack pointer\n"); return; } /* First thing is to look for a frame pointer */ for (addr = (unsigned int *)((unsigned int)stack & ~0xF); addr < endstack; addr++) { if (*addr & 0x1) Loading