diff options
Diffstat (limited to 'arch/frv')
-rw-r--r-- | arch/frv/kernel/process.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/frv/kernel/process.c b/arch/frv/kernel/process.c index c4488379ac3b..0fff8a61ef2a 100644 --- a/arch/frv/kernel/process.c +++ b/arch/frv/kernel/process.c | |||
@@ -204,7 +204,7 @@ int copy_thread(int nr, unsigned long clone_flags, | |||
204 | 204 | ||
205 | regs0 = __kernel_frame0_ptr; | 205 | regs0 = __kernel_frame0_ptr; |
206 | childregs0 = (struct pt_regs *) | 206 | childregs0 = (struct pt_regs *) |
207 | ((unsigned long) p->thread_info + THREAD_SIZE - USER_CONTEXT_SIZE); | 207 | (task_stack_page(p) + THREAD_SIZE - USER_CONTEXT_SIZE); |
208 | childregs = childregs0; | 208 | childregs = childregs0; |
209 | 209 | ||
210 | /* set up the userspace frame (the only place that the USP is stored) */ | 210 | /* set up the userspace frame (the only place that the USP is stored) */ |
@@ -220,7 +220,7 @@ int copy_thread(int nr, unsigned long clone_flags, | |||
220 | *childregs = *regs; | 220 | *childregs = *regs; |
221 | childregs->sp = (unsigned long) childregs0; | 221 | childregs->sp = (unsigned long) childregs0; |
222 | childregs->next_frame = childregs0; | 222 | childregs->next_frame = childregs0; |
223 | childregs->gr15 = (unsigned long) p->thread_info; | 223 | childregs->gr15 = (unsigned long) task_thread_info(p); |
224 | childregs->gr29 = (unsigned long) p; | 224 | childregs->gr29 = (unsigned long) p; |
225 | } | 225 | } |
226 | 226 | ||