]> git.baikalelectronics.ru Git - kernel.git/commit
sched/nohz: Fix nohz cpu idle load balancing state with cpu hotplug
authorSuresh Siddha <suresh.b.siddha@intel.com>
Fri, 20 Jan 2012 02:28:57 +0000 (18:28 -0800)
committerIngo Molnar <mingo@elte.hu>
Thu, 26 Jan 2012 18:38:13 +0000 (19:38 +0100)
commit0f2006b882b869d6e8c813811fb12f7d8f6b8764
tree38be96d9232b302780476899f8536e690c693ffb
parenta53c79cc28ad7a7f676d96aab2a0169e449412fd
sched/nohz: Fix nohz cpu idle load balancing state with cpu hotplug

With the recent nohz scheduler changes, rq's nohz flag
'NOHZ_TICK_STOPPED' and its associated state doesn't get cleared
immediately after the cpu exits idle. This gets cleared as part
of the next tick seen on that cpu.

For the cpu offline support, we need to clear this state
manually. Fix it by registering a cpu notifier, which clears the
nohz idle load balance state for this rq explicitly during the
CPU_DYING notification.

There won't be any nohz updates for that cpu, after the
CPU_DYING notification. But lets be extra paranoid and skip
updating the nohz state in the select_nohz_load_balancer() if
the cpu is not in active state anymore.

Reported-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>
Reviewed-and-tested-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>
Tested-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1327026538.16150.40.camel@sbsiddha-desk.sc.intel.com
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/sched/fair.c