[PATCH] rcu: When rcuog kthreads is in polling mode, wakeup waitqueue is not requried

From: Zqiang
Date: Thu Jan 27 2022 - 22:13:36 EST


When grace period cleanup, the rcuog kthreads that waiting in sq
waitqueue will be awakened, however if the 'rcu_nocb_poll' is set,
the sq waitqueue always empty, so if 'rcu_nocb_poll' is set, return
directly.

Signed-off-by: Zqiang <qiang1.zhang@xxxxxxxxx>
---
kernel/rcu/tree_nocb.h | 2 ++
1 file changed, 2 insertions(+)

diff --git a/kernel/rcu/tree_nocb.h b/kernel/rcu/tree_nocb.h
index 636d0546a4e9..9e106c590e56 100644
--- a/kernel/rcu/tree_nocb.h
+++ b/kernel/rcu/tree_nocb.h
@@ -201,6 +201,8 @@ static void rcu_lockdep_assert_cblist_protected(struct rcu_data *rdp)
*/
static void rcu_nocb_gp_cleanup(struct swait_queue_head *sq)
{
+ if (rcu_nocb_poll)
+ return;
swake_up_all(sq);
}

--
2.25.1