Commit 17a8212b authored by Paul E. McKenney's avatar Paul E. McKenney
Browse files

rcu: Remove failsafe check for lost quiescent state



Now that quiescent-state reporting is fully event-driven, this commit
removes the check for a lost quiescent state from force_qs_rnp().

Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
parent f34f2f58
Loading
Loading
Loading
Loading
+3 −13
Original line number Diff line number Diff line
@@ -2317,7 +2317,8 @@ rcu_report_qs_rnp(unsigned long mask, struct rcu_state *rsp,
 * irqs disabled, and this lock is released upon return, but irqs remain
 * disabled.
 */
static void rcu_report_unblock_qs_rnp(struct rcu_state *rsp,
static void __maybe_unused
rcu_report_unblock_qs_rnp(struct rcu_state *rsp,
			  struct rcu_node *rnp, unsigned long flags)
	__releases(rnp->lock)
{
@@ -2679,17 +2680,6 @@ static void force_qs_rnp(struct rcu_state *rsp, int (*f)(struct rcu_data *rsp))
				/* rcu_initiate_boost() releases rnp->lock */
				continue;
			}
			if (rnp->parent &&
			    (rnp->parent->qsmask & rnp->grpmask)) {
				/*
				 * Race between grace-period
				 * initialization and task exiting RCU
				 * read-side critical section: Report.
				 */
				rcu_report_unblock_qs_rnp(rsp, rnp, flags);
				/* rcu_report_unblock_qs_rnp() rlses ->lock */
				continue;
			}
			raw_spin_unlock_irqrestore_rcu_node(rnp, flags);
			continue;
		}