aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorFrederic Weisbecker <frederic@kernel.org>2024-05-30 15:45:47 +0200
committerNeeraj Upadhyay <neeraj.upadhyay@kernel.org>2024-07-29 07:34:31 +0530
commitd2e7f55ff2e3d878a63149c90b360cbec101a83e (patch)
tree9e145e48d8729edd09c9757900c35fb01febfda0
parentrcu/nocb: (De-)offload callbacks on offline CPUs only (diff)
downloadwireguard-linux-d2e7f55ff2e3d878a63149c90b360cbec101a83e.tar.xz
wireguard-linux-d2e7f55ff2e3d878a63149c90b360cbec101a83e.zip
rcu/nocb: Remove halfway (de-)offloading handling from bypass
Bypass enqueue can't happen anymore in the middle of (de-)offloading since this sort of transition now only applies to offline CPUs. The related safety check can therefore be removed. Signed-off-by: Frederic Weisbecker <frederic@kernel.org> Signed-off-by: Paul E. McKenney <paulmck@kernel.org> Reviewed-by: Paul E. McKenney <paulmck@kernel.org> Signed-off-by: Neeraj Upadhyay <neeraj.upadhyay@kernel.org>
Diffstat (limited to '')
-rw-r--r--kernel/rcu/tree_nocb.h8
1 files changed, 0 insertions, 8 deletions
diff --git a/kernel/rcu/tree_nocb.h b/kernel/rcu/tree_nocb.h
index 8e766396df3a..af44e75eb0cd 100644
--- a/kernel/rcu/tree_nocb.h
+++ b/kernel/rcu/tree_nocb.h
@@ -409,14 +409,6 @@ static bool rcu_nocb_try_bypass(struct rcu_data *rdp, struct rcu_head *rhp,
return false;
}
- // In the process of (de-)offloading: no bypassing, but
- // locking.
- if (!rcu_segcblist_completely_offloaded(&rdp->cblist)) {
- rcu_nocb_lock(rdp);
- *was_alldone = !rcu_segcblist_pend_cbs(&rdp->cblist);
- return false; /* Not offloaded, no bypassing. */
- }
-
// Don't use ->nocb_bypass during early boot.
if (rcu_scheduler_active != RCU_SCHEDULER_RUNNING) {
rcu_nocb_lock(rdp);