svn commit: r205150 - stable/8/sys/kern
Jilles Tjoelker
jilles at FreeBSD.org
Sun Mar 14 13:07:41 UTC 2010
Author: jilles
Date: Sun Mar 14 13:07:40 2010
New Revision: 205150
URL: http://svn.freebsd.org/changeset/base/205150
Log:
MFC r204410: Include terminated threads in ps's process cpu time field.
When a kinfo_proc is filled, first fill_kinfo_proc_only() fills in
ki_runtime using p->p_rux.rux_runtime (all cpu time used by the process
including terminated threads). If information for a specific thread is
requested, fill_kinfo_thread() then overwrites this with the thread's
td->td_runtime (good). If not, fill_kinfo_aggregate() overwrote it with
the sum of all threads' td->td_runtime which does not include terminated
threads.
This affects ps(1)'s TIME field, not its %CPU field nor anything in
top(1).
Modified:
stable/8/sys/kern/kern_proc.c
Directory Properties:
stable/8/sys/ (props changed)
stable/8/sys/amd64/include/xen/ (props changed)
stable/8/sys/cddl/contrib/opensolaris/ (props changed)
stable/8/sys/contrib/dev/acpica/ (props changed)
stable/8/sys/contrib/pf/ (props changed)
stable/8/sys/dev/xen/xenpci/ (props changed)
Modified: stable/8/sys/kern/kern_proc.c
==============================================================================
--- stable/8/sys/kern/kern_proc.c Sun Mar 14 13:05:48 2010 (r205149)
+++ stable/8/sys/kern/kern_proc.c Sun Mar 14 13:07:40 2010 (r205150)
@@ -675,11 +675,9 @@ fill_kinfo_aggregate(struct proc *p, str
kp->ki_estcpu = 0;
kp->ki_pctcpu = 0;
- kp->ki_runtime = 0;
FOREACH_THREAD_IN_PROC(p, td) {
thread_lock(td);
kp->ki_pctcpu += sched_pctcpu(td);
- kp->ki_runtime += cputick2usec(td->td_runtime);
kp->ki_estcpu += td->td_estcpu;
thread_unlock(td);
}
More information about the svn-src-stable-8
mailing list