Loading arch/sparc64/kernel/traps.c +11 −7 Original line number Diff line number Diff line Loading @@ -2134,12 +2134,20 @@ static void user_instruction_dump (unsigned int __user *pc) void show_stack(struct task_struct *tsk, unsigned long *_ksp) { unsigned long pc, fp, thread_base, ksp; void *tp = task_stack_page(tsk); struct thread_info *tp; struct reg_window *rw; int count = 0; ksp = (unsigned long) _ksp; if (!tsk) tsk = current; tp = task_thread_info(tsk); if (ksp == 0UL) { if (tsk == current) asm("mov %%fp, %0" : "=r" (ksp)); else ksp = tp->ksp; } if (tp == current_thread_info()) flushw_all(); Loading Loading @@ -2168,11 +2176,7 @@ void show_stack(struct task_struct *tsk, unsigned long *_ksp) void dump_stack(void) { unsigned long *ksp; __asm__ __volatile__("mov %%fp, %0" : "=r" (ksp)); show_stack(current, ksp); show_stack(current, NULL); } EXPORT_SYMBOL(dump_stack); Loading arch/sparc64/mm/fault.c +1 −4 Original line number Diff line number Diff line Loading @@ -112,15 +112,12 @@ static void __kprobes unhandled_fault(unsigned long address, static void bad_kernel_pc(struct pt_regs *regs, unsigned long vaddr) { unsigned long *ksp; printk(KERN_CRIT "OOPS: Bogus kernel PC [%016lx] in fault handler\n", regs->tpc); printk(KERN_CRIT "OOPS: RPC [%016lx]\n", regs->u_regs[15]); print_symbol("RPC: <%s>\n", regs->u_regs[15]); printk(KERN_CRIT "OOPS: Fault was to vaddr[%lx]\n", vaddr); __asm__("mov %%sp, %0" : "=r" (ksp)); show_stack(current, ksp); dump_stack(); unhandled_fault(regs->tpc, current, regs); } Loading Loading
arch/sparc64/kernel/traps.c +11 −7 Original line number Diff line number Diff line Loading @@ -2134,12 +2134,20 @@ static void user_instruction_dump (unsigned int __user *pc) void show_stack(struct task_struct *tsk, unsigned long *_ksp) { unsigned long pc, fp, thread_base, ksp; void *tp = task_stack_page(tsk); struct thread_info *tp; struct reg_window *rw; int count = 0; ksp = (unsigned long) _ksp; if (!tsk) tsk = current; tp = task_thread_info(tsk); if (ksp == 0UL) { if (tsk == current) asm("mov %%fp, %0" : "=r" (ksp)); else ksp = tp->ksp; } if (tp == current_thread_info()) flushw_all(); Loading Loading @@ -2168,11 +2176,7 @@ void show_stack(struct task_struct *tsk, unsigned long *_ksp) void dump_stack(void) { unsigned long *ksp; __asm__ __volatile__("mov %%fp, %0" : "=r" (ksp)); show_stack(current, ksp); show_stack(current, NULL); } EXPORT_SYMBOL(dump_stack); Loading
arch/sparc64/mm/fault.c +1 −4 Original line number Diff line number Diff line Loading @@ -112,15 +112,12 @@ static void __kprobes unhandled_fault(unsigned long address, static void bad_kernel_pc(struct pt_regs *regs, unsigned long vaddr) { unsigned long *ksp; printk(KERN_CRIT "OOPS: Bogus kernel PC [%016lx] in fault handler\n", regs->tpc); printk(KERN_CRIT "OOPS: RPC [%016lx]\n", regs->u_regs[15]); print_symbol("RPC: <%s>\n", regs->u_regs[15]); printk(KERN_CRIT "OOPS: Fault was to vaddr[%lx]\n", vaddr); __asm__("mov %%sp, %0" : "=r" (ksp)); show_stack(current, ksp); dump_stack(); unhandled_fault(regs->tpc, current, regs); } Loading