rcu/tree: Remove CONFIG_PREMPT_RCU check in force_qs_rnp()
authorNeeraj Upadhyay <neeraju@codeaurora.org>
Mon, 22 Jun 2020 18:07:03 +0000 (23:37 +0530)
committerPaul E. McKenney <paulmck@kernel.org>
Tue, 25 Aug 2020 01:36:06 +0000 (18:36 -0700)
commit9b1ce0acb5e65e9ea1e6b322562d072f9f7d1f6e
tree9d482e8ce8e7d0df0baca05fbdd569e7f26f22f3
parent9c39245382de4d52a122641952900709d4a9950b
rcu/tree: Remove CONFIG_PREMPT_RCU check in force_qs_rnp()

Originally, the call to rcu_preempt_blocked_readers_cgp() from
force_qs_rnp() had to be conditioned on CONFIG_PREEMPT_RCU=y, as in
commit a77da14ce9af ("rcu: Yet another fix for preemption and CPU
hotplug").  However, there is now a CONFIG_PREEMPT_RCU=n definition of
rcu_preempt_blocked_readers_cgp() that unconditionally returns zero, so
invoking it is now safe.  In addition, the CONFIG_PREEMPT_RCU=n definition
of rcu_initiate_boost() simply releases the rcu_node structure's ->lock,
which is what happens when the "if" condition evaluates to false.

This commit therefore drops the IS_ENABLED(CONFIG_PREEMPT_RCU) check,
so that rcu_initiate_boost() is called only in CONFIG_PREEMPT_RCU=y
kernels when there are readers blocking the current grace period.
This does not change the behavior, but reduces code-reader confusion by
eliminating non-CONFIG_PREEMPT_RCU=y calls to rcu_initiate_boost().

Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
kernel/rcu/tree.c