[TEST/REVIEW] CPU accounting patches
jhb at freebsd.org
Tue Jan 24 14:08:15 PST 2006
On Tuesday 24 January 2006 16:10, Poul-Henning Kamp wrote:
> Here is a new version of my cpu accounting change patch.
> This patch is supposedly harmless (or at least mostly harmless)
> and I'd appreciate it getting a solid trashing.
The XXX in calcru1() you can remove. The rux you are adding the current time
to is a local rusage_ext on the stack. However, your changes probably make
it bogus in that the current code assumes it can subtract the start time of
another CPU (for a thread running on another CPU) from the current time on
this CPU to get the amount of time the other thread has been running on the
other CPU since it last updated p->p_rux.rux_runtime. However, with the CPUs
having disparate timings this would break as curthread's CPU's notion of now
will be unrelated to the other thread's CPU's notion of now.
Other than that this patch looks fine to me. FYI, Alpha also has a per-cpu
counter (RPCC) that is used for the timecounter on UP Alphas.
John Baldwin <jhb at FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve" = http://www.FreeBSD.org
More information about the freebsd-current