diff options
| -rw-r--r-- | arch/s390/kernel/process.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/s390/kernel/process.c b/arch/s390/kernel/process.c index e0563baa1cfe..e6b480625cb3 100644 --- a/arch/s390/kernel/process.c +++ b/arch/s390/kernel/process.c | |||
| @@ -163,6 +163,7 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long new_stackp, | |||
| 163 | unsigned long unused, | 163 | unsigned long unused, |
| 164 | struct task_struct *p, struct pt_regs *regs) | 164 | struct task_struct *p, struct pt_regs *regs) |
| 165 | { | 165 | { |
| 166 | struct thread_info *ti; | ||
| 166 | struct fake_frame | 167 | struct fake_frame |
| 167 | { | 168 | { |
| 168 | struct stack_frame sf; | 169 | struct stack_frame sf; |
| @@ -214,6 +215,10 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long new_stackp, | |||
| 214 | p->thread.mm_segment = get_fs(); | 215 | p->thread.mm_segment = get_fs(); |
| 215 | /* Don't copy debug registers */ | 216 | /* Don't copy debug registers */ |
| 216 | memset(&p->thread.per_info, 0, sizeof(p->thread.per_info)); | 217 | memset(&p->thread.per_info, 0, sizeof(p->thread.per_info)); |
| 218 | /* Initialize per thread user and system timer values */ | ||
| 219 | ti = task_thread_info(p); | ||
| 220 | ti->user_timer = 0; | ||
| 221 | ti->system_timer = 0; | ||
| 217 | return 0; | 222 | return 0; |
| 218 | } | 223 | } |
| 219 | 224 | ||
