X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=fs%2Fproc%2Farray.c;h=933953c4e407db8d3c6b1608c263fb222d4dcd6c;hb=f06febc96ba8e0af80bcc3eaec0a109e88275fac;hp=71c9be59c9c2574045d69c33aa024d618b681b4c;hpb=6bfb09a1005193be5c81ebac9f3ef85210142650;p=deliverable%2Flinux.git diff --git a/fs/proc/array.c b/fs/proc/array.c index 71c9be59c9c2..933953c4e407 100644 --- a/fs/proc/array.c +++ b/fs/proc/array.c @@ -395,20 +395,20 @@ static int do_task_stat(struct seq_file *m, struct pid_namespace *ns, /* add up live thread stats at the group level */ if (whole) { + struct task_cputime cputime; struct task_struct *t = task; do { min_flt += t->min_flt; maj_flt += t->maj_flt; - utime = cputime_add(utime, task_utime(t)); - stime = cputime_add(stime, task_stime(t)); gtime = cputime_add(gtime, task_gtime(t)); t = next_thread(t); } while (t != task); min_flt += sig->min_flt; maj_flt += sig->maj_flt; - utime = cputime_add(utime, sig->utime); - stime = cputime_add(stime, sig->stime); + thread_group_cputime(task, &cputime); + utime = cputime.utime; + stime = cputime.stime; gtime = cputime_add(gtime, sig->gtime); }