diff options
Diffstat (limited to 'arch/s390/kernel/process.c')
-rw-r--r-- | arch/s390/kernel/process.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/s390/kernel/process.c b/arch/s390/kernel/process.c index 7dd58f8ac6b5..9f643309ed3d 100644 --- a/arch/s390/kernel/process.c +++ b/arch/s390/kernel/process.c | |||
@@ -217,8 +217,7 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long new_stackp, | |||
217 | struct pt_regs childregs; | 217 | struct pt_regs childregs; |
218 | } *frame; | 218 | } *frame; |
219 | 219 | ||
220 | frame = ((struct fake_frame *) | 220 | frame = container_of(task_pt_regs(p), struct fake_frame, childregs); |
221 | (THREAD_SIZE + (unsigned long) p->thread_info)) - 1; | ||
222 | p->thread.ksp = (unsigned long) frame; | 221 | p->thread.ksp = (unsigned long) frame; |
223 | /* Store access registers to kernel stack of new process. */ | 222 | /* Store access registers to kernel stack of new process. */ |
224 | frame->childregs = *regs; | 223 | frame->childregs = *regs; |