rcu: Add a module parameter to force use of expedited RCU primitives
authorAntti P Miettinen <ananaza@iki.fi>
Fri, 5 Oct 2012 06:59:15 +0000 (09:59 +0300)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Tue, 23 Oct 2012 21:54:08 +0000 (14:54 -0700)
commit3705b88db0d7cc4a097c32d9e554054103d3f807
treef3baf8c94363506964c9f944496267f74cdee47c
parentba49df4767d4fa5bbd2af3a51709fb81f94264ec
rcu: Add a module parameter to force use of expedited RCU primitives

There have been some embedded applications that would benefit from
use of expedited grace-period primitives.  In some ways, this is
similar to synchronize_net() doing either a normal or an expedited
grace period depending on lock state, but with control outside of
the kernel.

This commit therefore adds rcu_expedited boot and sysfs parameters
that cause the kernel to substitute expedited primitives for the
normal grace-period primitives.

[ paulmck: Add trace/event/rcu.h to kernel/srcu.c to avoid build error.
   Get rid of infinite loop through contention path.]

Signed-off-by: Antti P Miettinen <amiettinen@nvidia.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
kernel/ksysfs.c
kernel/rcu.h
kernel/rcupdate.c
kernel/rcutiny_plugin.h
kernel/rcutree.c
kernel/rcutree_plugin.h
kernel/srcu.c