提交 70583161 编写于 作者: A Andi Kleen 提交者: Linus Torvalds

[PATCH] i386: Fix up backtrace fallback patch

I didn't test all compilation combinations. Shame on me.
And fix a missing option in the boot option following x86-64 (Jan Beulich)
Signed-off-by: NAndi Kleen <ak@suse.de>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 65f87d8a
...@@ -190,11 +190,11 @@ static void show_trace_log_lvl(struct task_struct *task, struct pt_regs *regs, ...@@ -190,11 +190,11 @@ static void show_trace_log_lvl(struct task_struct *task, struct pt_regs *regs,
if (unw_ret > 0 && !arch_unw_user_mode(&info)) { if (unw_ret > 0 && !arch_unw_user_mode(&info)) {
#ifdef CONFIG_STACK_UNWIND #ifdef CONFIG_STACK_UNWIND
print_symbol("DWARF2 unwinder stuck at %s\n", print_symbol("DWARF2 unwinder stuck at %s\n",
UNW_PC(info.regs)); UNW_PC(&info));
if (call_trace == 1) { if (call_trace == 1) {
printk("Leftover inexact backtrace:\n"); printk("Leftover inexact backtrace:\n");
if (UNW_SP(info.regs)) if (UNW_SP(&info))
stack = (void *)UNW_SP(info.regs); stack = (void *)UNW_SP(&info);
} else if (call_trace > 1) } else if (call_trace > 1)
return; return;
else else
...@@ -1249,8 +1249,10 @@ static int __init call_trace_setup(char *s) ...@@ -1249,8 +1249,10 @@ static int __init call_trace_setup(char *s)
call_trace = -1; call_trace = -1;
else if (strcmp(s, "both") == 0) else if (strcmp(s, "both") == 0)
call_trace = 0; call_trace = 0;
else if (strcmp(s, "new") == 0) else if (strcmp(s, "newfallback") == 0)
call_trace = 1; call_trace = 1;
else if (strcmp(s, "new") == 2)
call_trace = 2;
return 1; return 1;
} }
__setup("call_trace=", call_trace_setup); __setup("call_trace=", call_trace_setup);
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册