summaryrefslogtreecommitdiffstats
path: root/kernel/unwind.c
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@novell.com>2006-06-26 13:57:47 +0200
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-26 19:48:18 +0200
commitc33bd9aac0597eeedaaa01ea5aafe456894b2f2b (patch)
treecdac9bb99eb3943feccc2a21d09a1524a8867cb0 /kernel/unwind.c
parent[PATCH] i386: reliable stack trace support i386 entry.S (diff)
downloadlinux-c33bd9aac0597eeedaaa01ea5aafe456894b2f2b.tar.xz
linux-c33bd9aac0597eeedaaa01ea5aafe456894b2f2b.zip
[PATCH] i386/x86-64: fall back to old-style call trace if no unwinding
If no unwinding is possible at all for a certain exception instance, fall back to the old style call trace instead of not showing any trace at all. Also, allow setting the stack trace mode at the command line. Signed-off-by: Jan Beulich <jbeulich@novell.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel/unwind.c')
-rw-r--r--kernel/unwind.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/kernel/unwind.c b/kernel/unwind.c
index d36bcd3ad3b5..0421035272d9 100644
--- a/kernel/unwind.c
+++ b/kernel/unwind.c
@@ -885,14 +885,13 @@ EXPORT_SYMBOL(unwind_init_blocked);
* Prepare to unwind the currently running thread.
*/
int unwind_init_running(struct unwind_frame_info *info,
- asmlinkage void (*callback)(struct unwind_frame_info *,
- void *arg),
+ asmlinkage int (*callback)(struct unwind_frame_info *,
+ void *arg),
void *arg)
{
info->task = current;
- arch_unwind_init_running(info, callback, arg);
- return 0;
+ return arch_unwind_init_running(info, callback, arg);
}
EXPORT_SYMBOL(unwind_init_running);