Thread (9 messages) flat view 9 messages, 5 authors, 2007-11-04

Re: [PATCH] Restore deterministic CPU accounting on powerpc

From: Ingo Molnar <hidden>
Date: 2007-11-03 08:54:50
Also in: lkml

* Paul Mackerras [off-list ref] wrote:
Since powerpc started using CONFIG_GENERIC_CLOCKEVENTS, the 
deterministic CPU accounting (CONFIG_VIRT_CPU_ACCOUNTING) has been 
broken on powerpc, because we end up counting user time twice: once in 
timer_interrupt() and once in update_process_times().

This fixes the problem by pulling the code in update_process_times 
that updates utime and stime into a separate function called 
account_process_tick.  If CONFIG_VIRT_CPU_ACCOUNTING is not defined, 
there is a version of account_process_tick in kernel/timer.c that 
simply accounts a whole tick to either utime or stime as before.  If 
CONFIG_VIRT_CPU_ACCOUNTING is defined, then arch code gets to 
implement account_process_tick.

This also lets us simplify the s390 code a bit; it means that the s390 
timer interrupt can now call update_process_times even when 
CONFIG_VIRT_CPU_ACCOUNTING is turned on, and can just implement a 
suitable account_process_tick().

Signed-off-by: Paul Mackerras <redacted>
lets push this towards Linus via the scheduler tree, ok?

	Ingo
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help