diff options
author | Frederic Weisbecker <frederic@kernel.org> | 2022-10-16 16:22:53 +0000 |
---|---|---|
committer | Paul E. McKenney <paulmck@kernel.org> | 2022-10-18 15:01:31 -0700 |
commit | b8f7aca3f0e0e6223094ba2662bac90353674b04 (patch) | |
tree | eae37c2eb1b7af19bbd2e795601640bd824cf749 /kernel/rcu/tree_nocb.h | |
parent | b50606f35f4b73c8e4c6b9c64fe7ba72ea919134 (diff) |
rcu: Fix missing nocb gp wake on rcu_barrier()
In preparation for RCU lazy changes, wake up the RCU nocb gp thread if
needed after an entrain. This change prevents the RCU barrier callback
from waiting in the queue for several seconds before the lazy callbacks
in front of it are serviced.
Reported-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Diffstat (limited to 'kernel/rcu/tree_nocb.h')
-rw-r--r-- | kernel/rcu/tree_nocb.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/kernel/rcu/tree_nocb.h b/kernel/rcu/tree_nocb.h index f77a6d7e1356..094fd454b6c3 100644 --- a/kernel/rcu/tree_nocb.h +++ b/kernel/rcu/tree_nocb.h @@ -1558,6 +1558,11 @@ static void rcu_init_one_nocb(struct rcu_node *rnp) { } +static bool wake_nocb_gp(struct rcu_data *rdp, bool force) +{ + return false; +} + static bool rcu_nocb_flush_bypass(struct rcu_data *rdp, struct rcu_head *rhp, unsigned long j) { |