Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 21cc2483 authored by Paul E. McKenney's avatar Paul E. McKenney
Browse files

rcu: Advance callbacks after migration



When migrating callbacks from a newly offlined CPU, we are already
holding the root rcu_node structure's lock, so it costs almost nothing
to advance and accelerate the newly migrated callbacks.  This patch
therefore makes this advancing and acceleration happen.

Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
parent 537b85c8
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -3935,6 +3935,7 @@ static void rcu_migrate_callbacks(int cpu, struct rcu_state *rsp)
	rcu_advance_cbs(rsp, rnp_root, rdp); /* Leverage recent GPs. */
	rcu_send_cbs_to_orphanage(cpu, rsp, rnp, rdp);
	rcu_adopt_orphan_cbs(rsp, flags);
	rcu_advance_cbs(rsp, rnp_root, my_rdp); /* Assign GP to pending CBs. */
	raw_spin_unlock_irqrestore_rcu_node(rnp_root, flags);
	WARN_ONCE(rcu_segcblist_n_cbs(&rdp->cblist) != 0 ||
		  !rcu_segcblist_empty(&rdp->cblist),