提交 fe4e09e7 编写于 作者: M Matt Redfearn 提交者: Ralf Baechle

MIPS: traps: Fix output of show_stacktrace

Since commit 4bcc595c ("printk: reinstate KERN_CONT for printing
continuation lines") the output from show_stacktrace on MIPS has been
pretty unreadable due to the lack of KERN_CONT markers. Use pr_cont to
provide the appropriate markers & restore the expected output. Also
start a new line with printk such that the presence of timing
information does not interfere with output.
Signed-off-by: NMatt Redfearn <matt.redfearn@imgtec.com>
Cc: Maciej W. Rozycki <macro@imgtec.com>
Cc: James Hogan <james.hogan@imgtec.com>
Cc: Paul Burton <paul.burton@imgtec.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/14430/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
上级 bcf084de
...@@ -174,22 +174,24 @@ static void show_stacktrace(struct task_struct *task, ...@@ -174,22 +174,24 @@ static void show_stacktrace(struct task_struct *task,
printk("Stack :"); printk("Stack :");
i = 0; i = 0;
while ((unsigned long) sp & (PAGE_SIZE - 1)) { while ((unsigned long) sp & (PAGE_SIZE - 1)) {
if (i && ((i % (64 / field)) == 0)) if (i && ((i % (64 / field)) == 0)) {
printk("\n "); pr_cont("\n");
printk(" ");
}
if (i > 39) { if (i > 39) {
printk(" ..."); pr_cont(" ...");
break; break;
} }
if (__get_user(stackdata, sp++)) { if (__get_user(stackdata, sp++)) {
printk(" (Bad stack address)"); pr_cont(" (Bad stack address)");
break; break;
} }
printk(" %0*lx", field, stackdata); pr_cont(" %0*lx", field, stackdata);
i++; i++;
} }
printk("\n"); pr_cont("\n");
show_backtrace(task, regs); show_backtrace(task, regs);
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册