]> git.baikalelectronics.ru Git - kernel.git/commit
rcu: Reduce synchronize_rcu_expedited() latency
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Tue, 31 Jul 2012 00:19:25 +0000 (17:19 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Sun, 23 Sep 2012 14:41:56 +0000 (07:41 -0700)
commitd378149bde2489241d76fee7dd140d3cf582c082
tree4b94666097ec98ebb5524799203d215c4c575148
parent8aa6123b2897ef9f038ad048e86466904bc84e4e
rcu: Reduce synchronize_rcu_expedited() latency

The synchronize_rcu_expedited() function disables interrupts across a
scan of all leaf rcu_node structures, which is not good for real-time
scheduling latency on large systems (hundreds or especially thousands
of CPUs).  This commit therefore holds off CPU-hotplug operations using
get_online_cpus(), and removes the prior acquisiion of the ->onofflock
(which required disabling interrupts).

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
kernel/rcutree_plugin.h