]> git.baikalelectronics.ru Git - kernel.git/commit
sched: Cure load average vs NO_HZ woes
authorPeter Zijlstra <a.p.zijlstra@chello.nl>
Thu, 22 Apr 2010 19:50:19 +0000 (21:50 +0200)
committerIngo Molnar <mingo@elte.hu>
Fri, 23 Apr 2010 09:02:02 +0000 (11:02 +0200)
commit9dd4e7748ff0171d02e79807e3272b4af262d701
treeb200960d04b0a955aaf9a101d6f0a4ed34f07bb2
parent7c9b0e2d53a5b4f755d6ec70641fcc57dddbda03
sched: Cure load average vs NO_HZ woes

Chase reported that due to us decrementing calc_load_task prematurely
(before the next LOAD_FREQ sample), the load average could be scewed
by as much as the number of CPUs in the machine.

This patch, based on Chase's patch, cures the problem by keeping the
delta of the CPU going into NO_HZ idle separately and folding that in
on the next LOAD_FREQ update.

This restores the balance and we get strict LOAD_FREQ period samples.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: Chase Douglas <chase.douglas@canonical.com>
LKML-Reference: <1271934490.1776.343.camel@laptop>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/sched.c
kernel/sched_idletask.c