From: Al Viro Signed-off-by: Al Viro Signed-off-by: Andrew Morton --- arch/arm/kernel/process.c | 2 +- arch/arm/kernel/traps.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff -puN arch/arm/kernel/process.c~arm-end_of_stack arch/arm/kernel/process.c --- devel/arch/arm/kernel/process.c~arm-end_of_stack 2006-01-04 22:02:40.000000000 -0800 +++ devel-akpm/arch/arm/kernel/process.c 2006-01-04 22:02:40.000000000 -0800 @@ -459,7 +459,7 @@ unsigned long get_wchan(struct task_stru if (!p || p == current || p->state == TASK_RUNNING) return 0; - stack_start = (unsigned long)(p->thread_info + 1); + stack_start = (unsigned long)end_of_stack(p); stack_end = ((unsigned long)p->thread_info) + THREAD_SIZE; fp = thread_saved_fp(p); diff -puN arch/arm/kernel/traps.c~arm-end_of_stack arch/arm/kernel/traps.c --- devel/arch/arm/kernel/traps.c~arm-end_of_stack 2006-01-04 22:02:40.000000000 -0800 +++ devel-akpm/arch/arm/kernel/traps.c 2006-01-04 22:02:40.000000000 -0800 @@ -164,7 +164,7 @@ static void dump_backtrace(struct pt_reg } else if (verify_stack(fp)) { printk("invalid frame pointer 0x%08x", fp); ok = 0; - } else if (fp < (unsigned long)(tsk->thread_info + 1)) + } else if (fp < (unsigned long)end_of_stack(tsk)) printk("frame pointer underflow"); printk("\n"); _