summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoman Zippel <zippel@linux-m68k.org>2006-06-23 02:04:56 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-23 07:43:00 -0700
commitcb7d390df391402c9630940d5a2ea1571fc5cde2 (patch)
treece2e2406a477a45db3d0e77948f6431e040e81ee
parentf6c4192e77dffbc50ee1b9a24a1063ff961aaf04 (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>
-rw-r--r--arch/m68k/kernel/traps.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/m68k/kernel/traps.c b/arch/m68k/kernel/traps.c
index cdf58fbb3e7..86aa63f91f7 100644
--- a/arch/m68k/kernel/traps.c
+++ b/arch/m68k/kernel/traps.c
@@ -992,6 +992,7 @@ void show_registers(struct pt_regs *regs)
void show_stack(struct task_struct *task, unsigned long *stack)
{
+ unsigned long *p;
unsigned long *endstack;
int i;
@@ -1004,12 +1005,13 @@ void show_stack(struct task_struct *task, unsigned long *stack)
endstack = (unsigned long *)(((unsigned long)stack + THREAD_SIZE - 1) & -THREAD_SIZE);
printk("Stack from %08lx:", (unsigned long)stack);
+ p = stack;
for (i = 0; i < kstack_depth_to_print; i++) {
- if (stack + 1 > endstack)
+ if (p + 1 > endstack)
break;
if (i % 8 == 0)
printk("\n ");
- printk(" %08lx", *stack++);
+ printk(" %08lx", *p++);
}
printk("\n");
show_trace(stack);