rcu: Ignore rdp.cpu_no_qs.b.exp on preemptible RCU's rcu_qs()
authorFrederic Weisbecker <frederic@kernel.org>
Thu, 16 Sep 2021 12:10:45 +0000 (14:10 +0200)
committerPaul E. McKenney <paulmck@kernel.org>
Wed, 8 Dec 2021 00:20:59 +0000 (16:20 -0800)
commita4382659487f84c00b5fbb61df25a9ad59396789
treee4f96d3cbb285a731b139b4ddf99e8a1d3cbe6c4
parent8c0abfd6d2f6b0221194241ac2908751a2a0385f
rcu: Ignore rdp.cpu_no_qs.b.exp on preemptible RCU's rcu_qs()

Preemptible RCU does not use the rcu_data structure's ->cpu_no_qs.b.exp,
instead using a separate ->exp_deferred_qs field to record the need for
an expedited quiescent state.

In fact ->cpu_no_qs.b.exp should never be set in preemptible RCU because
preemptible RCU's expedited grace periods use other mechanisms to record
quiescent states.

This commit therefore removes the implicit rcu_qs() reference to
->cpu_no_qs.b.exp in favor of a direct reference to ->cpu_no_qs.b.norm.

Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
kernel/rcu/tree_plugin.h