aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/i386/kernel/traps.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/arch/i386/kernel/traps.c b/arch/i386/kernel/traps.c
index 3facc8fcb91e..021f8fdc7512 100644
--- a/arch/i386/kernel/traps.c
+++ b/arch/i386/kernel/traps.c
@@ -190,11 +190,11 @@ static void show_trace_log_lvl(struct task_struct *task, struct pt_regs *regs,
190 if (unw_ret > 0 && !arch_unw_user_mode(&info)) { 190 if (unw_ret > 0 && !arch_unw_user_mode(&info)) {
191#ifdef CONFIG_STACK_UNWIND 191#ifdef CONFIG_STACK_UNWIND
192 print_symbol("DWARF2 unwinder stuck at %s\n", 192 print_symbol("DWARF2 unwinder stuck at %s\n",
193 UNW_PC(info.regs)); 193 UNW_PC(&info));
194 if (call_trace == 1) { 194 if (call_trace == 1) {
195 printk("Leftover inexact backtrace:\n"); 195 printk("Leftover inexact backtrace:\n");
196 if (UNW_SP(info.regs)) 196 if (UNW_SP(&info))
197 stack = (void *)UNW_SP(info.regs); 197 stack = (void *)UNW_SP(&info);
198 } else if (call_trace > 1) 198 } else if (call_trace > 1)
199 return; 199 return;
200 else 200 else
@@ -1249,8 +1249,10 @@ static int __init call_trace_setup(char *s)
1249 call_trace = -1; 1249 call_trace = -1;
1250 else if (strcmp(s, "both") == 0) 1250 else if (strcmp(s, "both") == 0)
1251 call_trace = 0; 1251 call_trace = 0;
1252 else if (strcmp(s, "new") == 0) 1252 else if (strcmp(s, "newfallback") == 0)
1253 call_trace = 1; 1253 call_trace = 1;
1254 else if (strcmp(s, "new") == 2)
1255 call_trace = 2;
1254 return 1; 1256 return 1;
1255} 1257}
1256__setup("call_trace=", call_trace_setup); 1258__setup("call_trace=", call_trace_setup);