diff options
author | Paul E. McKenney <paul.mckenney@linaro.org> | 2012-08-22 00:00:05 +0200 |
---|---|---|
committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2012-09-23 16:41:56 +0200 |
commit | d7d6a11e8609f0319d4a2d8ede348f8b3374b652 (patch) | |
tree | 64a2e3260690a85fe637a3e34c94e8ca540e8fc6 /kernel/rcutree_plugin.h | |
parent | rcu: Reduce synchronize_rcu_expedited() latency (diff) | |
download | linux-d7d6a11e8609f0319d4a2d8ede348f8b3374b652.tar.xz linux-d7d6a11e8609f0319d4a2d8ede348f8b3374b652.zip |
rcu: Simplify quiescent-state detection
The current quiescent-state detection algorithm is needlessly
complex. It records the grace-period number corresponding to
the quiescent state at the time of the quiescent state, which
works, but it seems better to simply erase any record of previous
quiescent states at the time that the CPU notices the new grace
period. This has the further advantage of removing another piece
of RCU for which lockless reasoning is required.
Therefore, this commit makes this change.
Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
Diffstat (limited to 'kernel/rcutree_plugin.h')
-rw-r--r-- | kernel/rcutree_plugin.h | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/kernel/rcutree_plugin.h b/kernel/rcutree_plugin.h index b4e8eb24a5f1..4734afbea73a 100644 --- a/kernel/rcutree_plugin.h +++ b/kernel/rcutree_plugin.h @@ -137,8 +137,6 @@ static void rcu_preempt_qs(int cpu) { struct rcu_data *rdp = &per_cpu(rcu_preempt_data, cpu); - rdp->passed_quiesce_gpnum = rdp->gpnum; - barrier(); if (rdp->passed_quiesce == 0) trace_rcu_grace_period("rcu_preempt", rdp->gpnum, "cpuqs"); rdp->passed_quiesce = 1; |