]> git.baikalelectronics.ru Git - kernel.git/commit
rcu: Force per-rcu_node kthreads off of the outgoing CPU
authorPaul E. McKenney <paul.mckenney@linaro.org>
Thu, 14 Apr 2011 19:13:53 +0000 (12:13 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Fri, 6 May 2011 06:16:55 +0000 (23:16 -0700)
commitdcfcf739e1b7e79350b9e8c76977a78db0759182
treeb265d93dcc8f2669f8fb9b353344b9f6cc354728
parent1d54643077193ef6c2757941e690a225dc2a8592
rcu: Force per-rcu_node kthreads off of the outgoing CPU

The scheduler has had some heartburn in the past when too many real-time
kthreads were affinitied to the outgoing CPU.  So, this commit lightens
the load by forcing the per-rcu_node and the boost kthreads off of the
outgoing CPU.  Note that RCU's per-CPU kthread remains on the outgoing
CPU until the bitter end, as it must in order to preserve correctness.

Also avoid disabling hardirqs across calls to set_cpus_allowed_ptr(),
given that this function can block.

Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
kernel/rcutree.c
kernel/rcutree_plugin.h