diff options
Diffstat (limited to 'arch/m32r/kernel/process.c')
-rw-r--r-- | arch/m32r/kernel/process.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/arch/m32r/kernel/process.c b/arch/m32r/kernel/process.c index 2a1f250349b7..5dfc7ea45cf7 100644 --- a/arch/m32r/kernel/process.c +++ b/arch/m32r/kernel/process.c | |||
@@ -242,13 +242,10 @@ int dump_fpu(struct pt_regs *regs, elf_fpregset_t *fpu) | |||
242 | int copy_thread(int nr, unsigned long clone_flags, unsigned long spu, | 242 | int copy_thread(int nr, unsigned long clone_flags, unsigned long spu, |
243 | unsigned long unused, struct task_struct *tsk, struct pt_regs *regs) | 243 | unsigned long unused, struct task_struct *tsk, struct pt_regs *regs) |
244 | { | 244 | { |
245 | struct pt_regs *childregs; | 245 | struct pt_regs *childregs = task_pt_regs(tsk); |
246 | unsigned long sp = (unsigned long)tsk->thread_info + THREAD_SIZE; | ||
247 | extern void ret_from_fork(void); | 246 | extern void ret_from_fork(void); |
248 | 247 | ||
249 | /* Copy registers */ | 248 | /* Copy registers */ |
250 | sp -= sizeof (struct pt_regs); | ||
251 | childregs = (struct pt_regs *)sp; | ||
252 | *childregs = *regs; | 249 | *childregs = *regs; |
253 | 250 | ||
254 | childregs->spu = spu; | 251 | childregs->spu = spu; |