aboutsummaryrefslogtreecommitdiffstats
path: root/arch/i386/kernel/traps.c
diff options
context:
space:
mode:
authorAndi Kleen <ak@suse.de>2006-09-26 10:52:34 +0200
committerAndi Kleen <andi@basil.nowhere.org>2006-09-26 10:52:34 +0200
commit950fee84557416a3427dd404a13addc4be7b3e6c (patch)
tree8deea7e7c6d4a57bb1970f0dcb9afa387a74729c /arch/i386/kernel/traps.c
parent[PATCH] i386: Do stacktracer conversion too (diff)
downloadlinux-dev-950fee84557416a3427dd404a13addc4be7b3e6c.tar.xz
linux-dev-950fee84557416a3427dd404a13addc4be7b3e6c.zip
[PATCH] i386: Terminate backtrace fallback early if unwinder stack pointer is zero
Cc: jbeulich@novell.com Signed-off-by: Andi Kleen <ak@suse.de>
Diffstat (limited to 'arch/i386/kernel/traps.c')
-rw-r--r--arch/i386/kernel/traps.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/i386/kernel/traps.c b/arch/i386/kernel/traps.c
index 4ced4285163b..86fa7e47f301 100644
--- a/arch/i386/kernel/traps.c
+++ b/arch/i386/kernel/traps.c
@@ -197,6 +197,8 @@ void dump_trace(struct task_struct *task, struct pt_regs *regs,
if (UNW_SP(&info) >= PAGE_OFFSET) {
ops->warning(data, "Leftover inexact backtrace:\n");
stack = (void *)UNW_SP(&info);
+ if (!stack)
+ return;
} else
ops->warning(data, "Full inexact backtrace again:\n");
} else if (call_trace >= 1)