From: Roman Zippel Pass unmodified stack argument to show_trace(). Signed-off-by: Roman Zippel Signed-off-by: Andrew Morton --- arch/m68k/kernel/traps.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff -puN arch/m68k/kernel/traps.c~m68k-print-correct-stack-trace arch/m68k/kernel/traps.c --- devel/arch/m68k/kernel/traps.c~m68k-print-correct-stack-trace 2006-05-24 18:32:30.000000000 -0700 +++ devel-akpm/arch/m68k/kernel/traps.c 2006-05-24 18:32:30.000000000 -0700 @@ -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 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); _