[PATCH rcu 0/7] Expedited-grace-period updates for v5.17

From: Paul E. McKenney
Date: Wed Dec 01 2021 - 19:11:30 EST


Hello!

This series provides updates for RCU expedited grace periods, most
notably 7/7 fixing a low-probability grace-period hang.

1. Ignore rdp.cpu_no_qs.b.exp on preemptible RCU's rcu_qs(),
courtesy of Frederic Weisbecker.

2. Move rcu_data.cpu_no_qs.b.exp reset to rcu_export_exp_rdp(),
courtesy of Frederic Weisbecker.

3. Remove rcu_data.exp_deferred_qs and convert to rcu_data.cpu
no_qs.b.exp, courtesy of Frederic Weisbecker.

4. Mark sync_sched_exp_online_cleanup() ->cpu_no_qs.b.exp load.

5. Prevent expedited GP from enabling tick on offline CPU.

6. Make idle entry report expedited quiescent states.

7. Mark current CPU as exp-QS in IPI loop second pass, courtesy of
Frederic Weisbecker.

Thanx, Paul

------------------------------------------------------------------------

b/kernel/rcu/tree.c | 2 +-
b/kernel/rcu/tree.h | 1 -
b/kernel/rcu/tree_exp.h | 1 +
b/kernel/rcu/tree_plugin.h | 6 +++++-
kernel/rcu/tree_exp.h | 13 ++++++++-----
kernel/rcu/tree_plugin.h | 31 ++++++++++++++++++++-----------
6 files changed, 35 insertions(+), 19 deletions(-)