mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-10 15:58:47 +00:00
posix_cpu_timers_exit_group(): Do not use thread_group_cputimer()
When the process exits we don't have to run new cputimer nor use running one (as it not accounts when tsk->exit_state != 0) to get process CPU times. As there is only one thread we can just use CPU times fields from task and signal structs. Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Roland McGrath <roland@redhat.com> Cc: Vitaly Mayatskikh <vmayatsk@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
7b2aa037e8
commit
17d42c1c49
@ -521,11 +521,12 @@ void posix_cpu_timers_exit(struct task_struct *tsk)
|
|||||||
}
|
}
|
||||||
void posix_cpu_timers_exit_group(struct task_struct *tsk)
|
void posix_cpu_timers_exit_group(struct task_struct *tsk)
|
||||||
{
|
{
|
||||||
struct task_cputime cputime;
|
struct signal_struct *const sig = tsk->signal;
|
||||||
|
|
||||||
thread_group_cputimer(tsk, &cputime);
|
|
||||||
cleanup_timers(tsk->signal->cpu_timers,
|
cleanup_timers(tsk->signal->cpu_timers,
|
||||||
cputime.utime, cputime.stime, cputime.sum_exec_runtime);
|
cputime_add(tsk->utime, sig->utime),
|
||||||
|
cputime_add(tsk->stime, sig->stime),
|
||||||
|
tsk->se.sum_exec_runtime + sig->sum_sched_runtime);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void clear_dead_task(struct k_itimer *timer, union cpu_time_count now)
|
static void clear_dead_task(struct k_itimer *timer, union cpu_time_count now)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user