[PATCH rcu 0/9] Lazy-preemption-related updates

From: Paul E. McKenney
Date: Thu Jan 16 2025 - 15:13:27 EST


Hello!

This series makes adjustments to RCU to better handle lazy preemption:

1. fix header guard for rcu_all_qs(), courtesy of Ankur Arora.

2. rename PREEMPT_AUTO to PREEMPT_LAZY, courtesy of Ankur Arora.

3. update __cond_resched comment about RCU quiescent states,
courtesy of Ankur Arora.

4. handle unstable rdp in rcu_read_unlock_strict(), courtesy of
Ankur Arora.

5. handle quiescent states for PREEMPT_RCU=n, PREEMPT_COUNT=y,
courtesy of Ankur Arora.

6. provide quiescent states, courtesy of Ankur Arora.

7. limit PREEMPT_RCU configurations, courtesy of Ankur Arora.

8. Make scenario TREE10 build CONFIG_PREEMPT_LAZY=y.

9. Make scenario TREE07 build CONFIG_PREEMPT_LAZY=y.

Thanx, Paul

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

b/include/linux/rcupdate.h | 2 -
b/include/linux/rcutree.h | 2 -
b/include/linux/srcutiny.h | 2 -
b/kernel/rcu/Kconfig | 2 -
b/kernel/rcu/srcutiny.c | 14 +++----
b/kernel/rcu/tree_plugin.h | 11 +++++
b/kernel/sched/core.c | 4 +-
b/kernel/trace/trace_osnoise.c | 32 +++++++---------
b/tools/testing/selftests/rcutorture/configs/rcu/TREE07 | 3 +
b/tools/testing/selftests/rcutorture/configs/rcu/TREE10 | 3 +
kernel/rcu/Kconfig | 2 -
kernel/rcu/tree_plugin.h | 11 +++--
12 files changed, 51 insertions(+), 37 deletions(-)