kproc_info system and user time is broken for processes with
threads
John Baldwin
jhb at freebsd.org
Mon Jan 9 14:00:24 UTC 2012
On Saturday, January 07, 2012 5:06:46 pm Phil Kulin wrote:
> kproc_info system and user time is broken for processes with threads,
> when fetch then by kvm_getprocs() function call.
> For example, modern 'ps' on server running mysqld (145 precached threads)
>
> # ps -ax -o comm,cputime,systime,usertime | grep mysqld
> mysqld 16872:35.39 5249:07.68 3353:36.79
> # ps -ax -o comm,cputime,systime,usertime | grep httpd
> httpd 0:00.02 0:00.00 0:00.02
> httpd 0:00.00 0:00.00 0:00.00
> httpd 0:02.51 0:01.77 0:00.75
>
> Sum systime+usertime=cputime for httpd, but different for mysqld.
> systime and usertime for mysqld not changed many times, but cputime
increased.
> Modern ps uses ki_rusage.ru_stime and ki_rusage.ru_utime from
> kproc_info for systime and usertime statistic.
>
> What wrong?
Hmm, I can't see anything that would explain this. What if you
look at individual threads of mysqld (using 'H') flag? Also, which OS
version are you using?
--
John Baldwin
More information about the freebsd-stable
mailing list