aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>2015-03-09 20:00:56 -0400
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>2015-05-27 15:58:38 -0400
commitcce7f1fc015a98ca9263bd5730c00258bc214e53 (patch)
tree6d7bdb35d42e3caedbaf3ce2180901258f1245fd
parentc5b5539506f86469dca08310657ca93bbb6c00a5 (diff)
rcu: Remove redundant offline check
Because offline CPUs are propagated up the rcu_node tree's ->qsmaskinit bits just before each grace period starts, the ->qsmaskinit bit cannot be clear when the corresponding ->qsmask bit is set. Furthermore, this condition used to correspond to a CPU that was on its way offline, and making RCU's notion of an offline CPU more precise has eliminated this situation. This commit therefore removes the now-redundant offline check from force_qs_rnp(). Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
-rw-r--r--kernel/rcu/tree.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
index e338a12c3a1b..a1df68fce545 100644
--- a/kernel/rcu/tree.c
+++ b/kernel/rcu/tree.c
@@ -2749,8 +2749,6 @@ static void force_qs_rnp(struct rcu_state *rsp,
2749 bit = 1; 2749 bit = 1;
2750 for (; cpu <= rnp->grphi; cpu++, bit <<= 1) { 2750 for (; cpu <= rnp->grphi; cpu++, bit <<= 1) {
2751 if ((rnp->qsmask & bit) != 0) { 2751 if ((rnp->qsmask & bit) != 0) {
2752 if ((rnp->qsmaskinit & bit) == 0)
2753 *isidle = false; /* Pending hotplug. */
2754 if (f(per_cpu_ptr(rsp->rda, cpu), isidle, maxj)) 2752 if (f(per_cpu_ptr(rsp->rda, cpu), isidle, maxj))
2755 mask |= bit; 2753 mask |= bit;
2756 } 2754 }