aboutsummaryrefslogtreecommitdiffstats
path: root/arch/xtensa/kernel/process.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/xtensa/kernel/process.c')
-rw-r--r--arch/xtensa/kernel/process.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/xtensa/kernel/process.c b/arch/xtensa/kernel/process.c
index 6a44b54ae817..f1f596644bfc 100644
--- a/arch/xtensa/kernel/process.c
+++ b/arch/xtensa/kernel/process.c
@@ -145,7 +145,7 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long usp,
145 int user_mode = user_mode(regs); 145 int user_mode = user_mode(regs);
146 146
147 /* Set up new TSS. */ 147 /* Set up new TSS. */
148 tos = (unsigned long)p->thread_info + THREAD_SIZE; 148 tos = (unsigned long)task_stack_page(p) + THREAD_SIZE;
149 if (user_mode) 149 if (user_mode)
150 childregs = (struct pt_regs*)(tos - PT_USER_SIZE); 150 childregs = (struct pt_regs*)(tos - PT_USER_SIZE);
151 else 151 else
@@ -217,7 +217,7 @@ int kernel_thread(int (*fn)(void *), void * arg, unsigned long flags)
217unsigned long get_wchan(struct task_struct *p) 217unsigned long get_wchan(struct task_struct *p)
218{ 218{
219 unsigned long sp, pc; 219 unsigned long sp, pc;
220 unsigned long stack_page = (unsigned long) p->thread_info; 220 unsigned long stack_page = (unsigned long) task_stack_page(p);
221 int count = 0; 221 int count = 0;
222 222
223 if (!p || p == current || p->state == TASK_RUNNING) 223 if (!p || p == current || p->state == TASK_RUNNING)