linux/Documentation/RCU
Paul E. McKenney 9226b10d78 rcu: Place guard on rcu_all_qs() and rcu_note_context_switch() actions
The rcu_all_qs() and rcu_note_context_switch() do a series of checks,
taking various actions to supply RCU with quiescent states, depending
on the outcomes of the various checks.  This is a bit much for scheduling
fastpaths, so this commit creates a separate ->rcu_urgent_qs field in
the rcu_dynticks structure that acts as a global guard for these checks.
Thus, in the common case, rcu_all_qs() and rcu_note_context_switch()
check the ->rcu_urgent_qs field, find it false, and simply return.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
2017-04-18 11:38:18 -07:00
..
Design rcu: Place guard on rcu_all_qs() and rcu_note_context_switch() actions 2017-04-18 11:38:18 -07:00
00-INDEX documentation: Record rcu_dereference() value mishandling 2014-04-29 08:38:33 -07:00
arrayRCU.txt documentation: RCU-protected array indexes no longer supported 2015-05-27 12:56:17 -07:00
checklist.txt documentation: Record rcu_dereference() value mishandling 2014-04-29 08:38:33 -07:00
listRCU.txt rcu: Update docs to include kfree_rcu() 2012-11-08 11:44:25 -08:00
lockdep-splat.txt kthread: kthread worker API cleanup 2016-10-11 15:06:33 -07:00
lockdep.txt documentation: RCU-protected array indexes no longer supported 2015-05-27 12:56:17 -07:00
NMI-RCU.txt rcu: Fix RCU's NMI documentation 2011-09-28 21:36:44 -07:00
rcu_dereference.txt documentation: Fix spelling of "operators" 2015-07-15 14:43:10 -07:00
rcu.txt rcu: Remove redundant TREE_PREEMPT_RCU config option 2014-10-29 10:20:05 -07:00
rcubarrier.txt rcu: Fix rcu_barrier() documentation 2013-08-18 17:05:32 -07:00
rculist_nulls.txt netfilter: nf_conntrack: nf_conntrack_alloc() fixes 2009-07-16 14:03:40 +02:00
rcuref.txt documentation: Add pointer to percpu-ref for RCU and refcount 2014-07-08 08:32:56 -07:00
RTFP.txt Documentation: fix common spelling mistakes 2016-04-28 07:51:59 -06:00
stallwarn.txt Documentation: Fix spelling mistake 2016-06-14 16:01:00 -07:00
torture.txt rcutorture: Remove outdated config option description 2016-08-22 09:23:23 -07:00
trace.txt rcu: Eliminate unused expedited_normal counter 2017-01-23 11:37:14 -08:00
UP.txt rcu: Add synchronize_sched_expedited() rcutorture doc + updates 2009-07-03 10:02:29 +02:00
whatisRCU.txt Documentation/RCU: Fix minor typo 2016-11-14 10:39:48 -08:00