diff options
author | Andi Kleen <ak@suse.de> | 2006-09-26 04:52:34 -0400 |
---|---|---|
committer | Andi Kleen <andi@basil.nowhere.org> | 2006-09-26 04:52:34 -0400 |
commit | 950fee84557416a3427dd404a13addc4be7b3e6c (patch) | |
tree | 8deea7e7c6d4a57bb1970f0dcb9afa387a74729c /arch/i386/kernel/traps.c | |
parent | 2b14a78cd07a52001b8c3865ed615d8b9b905b78 (diff) |
[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.c | 2 |
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, | |||
197 | if (UNW_SP(&info) >= PAGE_OFFSET) { | 197 | if (UNW_SP(&info) >= PAGE_OFFSET) { |
198 | ops->warning(data, "Leftover inexact backtrace:\n"); | 198 | ops->warning(data, "Leftover inexact backtrace:\n"); |
199 | stack = (void *)UNW_SP(&info); | 199 | stack = (void *)UNW_SP(&info); |
200 | if (!stack) | ||
201 | return; | ||
200 | } else | 202 | } else |
201 | ops->warning(data, "Full inexact backtrace again:\n"); | 203 | ops->warning(data, "Full inexact backtrace again:\n"); |
202 | } else if (call_trace >= 1) | 204 | } else if (call_trace >= 1) |