rcu: Allow RCU grace-period initialization to be preempted
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Wed, 20 Jun 2012 00:18:20 +0000 (17:18 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Sun, 23 Sep 2012 14:41:52 +0000 (07:41 -0700)
commit755609a9087fa983f567dc5452b2fa7b089b591f
tree8a0687cae001206535a22223efb73884daedde30
parent79bce6724366b3827c5c673fb07d7063082873cf
rcu: Allow RCU grace-period initialization to be preempted

RCU grace-period initialization is currently carried out with interrupts
disabled, which can result in 200-microsecond latency spikes on systems
on which RCU has been configured for 4096 CPUs.  This patch therefore
makes the RCU grace-period initialization be preemptible, which should
eliminate those latency spikes.  Similar spikes from grace-period cleanup
and the forcing of quiescent states will be dealt with similarly by later
patches.

Reported-by: Mike Galbraith <mgalbraith@suse.de>
Reported-by: Dimitri Sivanich <sivanich@sgi.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
kernel/rcutree.c