diff options
author | Roman Zippel <zippel@linux-m68k.org> | 2006-06-23 05:04:56 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-06-23 10:43:00 -0400 |
commit | cb7d390df391402c9630940d5a2ea1571fc5cde2 (patch) | |
tree | ce2e2406a477a45db3d0e77948f6431e040e81ee /arch/m68k/kernel/traps.c | |
parent | f6c4192e77dffbc50ee1b9a24a1063ff961aaf04 (diff) |
[PATCH] m68k: print correct stack trace
Pass unmodified stack argument to show_trace().
Signed-off-by: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/m68k/kernel/traps.c')
-rw-r--r-- | arch/m68k/kernel/traps.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/m68k/kernel/traps.c b/arch/m68k/kernel/traps.c index cdf58fbb3e73..86aa63f91f73 100644 --- a/arch/m68k/kernel/traps.c +++ b/arch/m68k/kernel/traps.c | |||
@@ -992,6 +992,7 @@ void show_registers(struct pt_regs *regs) | |||
992 | 992 | ||
993 | void show_stack(struct task_struct *task, unsigned long *stack) | 993 | void show_stack(struct task_struct *task, unsigned long *stack) |
994 | { | 994 | { |
995 | unsigned long *p; | ||
995 | unsigned long *endstack; | 996 | unsigned long *endstack; |
996 | int i; | 997 | int i; |
997 | 998 | ||
@@ -1004,12 +1005,13 @@ void show_stack(struct task_struct *task, unsigned long *stack) | |||
1004 | endstack = (unsigned long *)(((unsigned long)stack + THREAD_SIZE - 1) & -THREAD_SIZE); | 1005 | endstack = (unsigned long *)(((unsigned long)stack + THREAD_SIZE - 1) & -THREAD_SIZE); |
1005 | 1006 | ||
1006 | printk("Stack from %08lx:", (unsigned long)stack); | 1007 | printk("Stack from %08lx:", (unsigned long)stack); |
1008 | p = stack; | ||
1007 | for (i = 0; i < kstack_depth_to_print; i++) { | 1009 | for (i = 0; i < kstack_depth_to_print; i++) { |
1008 | if (stack + 1 > endstack) | 1010 | if (p + 1 > endstack) |
1009 | break; | 1011 | break; |
1010 | if (i % 8 == 0) | 1012 | if (i % 8 == 0) |
1011 | printk("\n "); | 1013 | printk("\n "); |
1012 | printk(" %08lx", *stack++); | 1014 | printk(" %08lx", *p++); |
1013 | } | 1015 | } |
1014 | printk("\n"); | 1016 | printk("\n"); |
1015 | show_trace(stack); | 1017 | show_trace(stack); |