>
> Hi Linus,
>
> When the merge window opens, please pull the RCU changes for v6.16:
>
> The following changes since commit 0af2f6be1b4281385b618cb86ad946eded089ac8:
>
> Linux 6.15-rc1 (2025-04-06 13:11:33 -0700)
>
> are available in the Git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/rcu/linux.git
> tags/next.2025.05.17a
>
> for you to fetch changes up to 9c80e443379861a6b374db3c5bb830167cbe0676:
>
> Merge branches 'rcu/misc-for-6.16', 'rcu/seq-counters-for-6.16' and
> 'rcu/torture-for-6.16' into rcu/for-next (2025-05-16 11:18:16 -0400)
>
> We in the RCU maintainers crew have done rigorous testing of these patches on
> both x86 and ARM, big and small machines, to ensure high quality so I am
> confident this will go smoothly. Thanks!
>
> ----------------------------------------------------------------
> RCU pull request for v6.16
>
> Summary of changes:
> - Removed swake_up_one_online() workaround
> - Reverted an incorrect rcuog wake-up fix from offline softirq
> - Rust RCU Guard methods marked as inline
> - Updated MAINTAINERS with Joel’s and Zqiang's new email address
> - Replaced magic constant in rcu_seq_done_exact() with named constant
> - Added warning mechanism to validate rcu_seq_done_exact()
> - Switched SRCU polling API to use rcu_seq_done_exact()
> - Commented on redundant delta check in rcu_seq_done_exact()
> - Made ->gpwrap tests in rcutorture more frequent
> - Fixed reuse of ARM64 images in rcutorture
> - rcutorture improved to check Kconfig and reader conflict handling
> - Extracted logic from rcu_torture_one_read() for clarity
> - Updated LWN RCU API documentation links
> - Enabled --do-rt in torture.sh for CONFIG_PREEMPT_RT
> - Added tests for SRCU up/down reader primitives
> - Added comments and delays checks in rcutorture
> - Deprecated srcu_read_lock_lite() and srcu_read_unlock_lite() via checkpatch
> - Added --do-normal and --do-no-normal to torture.sh
> - Added RCU Rust binding tests to torture.sh
> - Reduced CPU overcommit and removed MAXSMP/CPUMASK_OFFSTACK in TREE01
> - Replaced kmalloc() with kcalloc() in rcuscale
> - Refined listRCU example code for stale data elimination
> - Fixed hardirq count bug for x86 in cpu_stall_cputime
> - Added safety checks in rcu/nocb for offloaded rdp access
> - Other miscellaneous changes
>
> ----------------------------------------------------------------
> Frederic Weisbecker (3):
> rcu: Comment on the extraneous delta test on rcu_seq_done_exact()
> rcu: Remove swake_up_one_online() bandaid
> Revert "rcu/nocb: Fix rcuog wake-up from offline softirq"
>
> I Hsin Cheng (1):
> rust: sync: rcu: Mark Guard methods as inline
>
> Joel Fernandes (7):
> MAINTAINERS: Update Joel's email address
> rcu: Replace magic number with meaningful constant in
> rcu_seq_done_exact()
> rcu: Add warning to ensure rcu_seq_done_exact() is working
> srcu: Use rcu_seq_done_exact() for polling API
> rcutorture: Perform more frequent testing of ->gpwrap
> rcutorture: Fix issue with re-using old images on ARM64
> Merge branches 'rcu/misc-for-6.16', 'rcu/seq-counters-for-6.16' and
> 'rcu/torture-for-6.16' into rcu/for-next
>
> Paul E. McKenney (12):
> rcutorture: Make srcu_lockdep.sh check kernel Kconfig
> rcutorture: Make srcu_lockdep.sh check reader-conflict handling
> rcutorture: Split out beginning and end from rcu_torture_one_read()
> rcutorture: Make torture.sh --do-rt use CONFIG_PREEMPT_RT
> doc: Update LWN RCU API links in whatisRCU.rst
> rcutorture: Comment invocations of tick_dep_set_task()
> checkpatch: Deprecate srcu_read_lock_lite() and srcu_read_unlock_lite()
> torture: Add --do-{,no-}normal to torture.sh
> torture: Add testing of RCU's Rust bindings to torture.sh
> torture: Check for "Call trace:" as well as "Call Trace:"
> rcutorture: Reduce TREE01 CPU overcommit
> rcutorture: Remove MAXSMP and CPUMASK_OFFSTACK from TREE01
>
> Su Hui (1):
> rcuscale: using kcalloc() to relpace kmalloc()
>
> Wei Yang (1):
> doc/RCU/listRCU: refine example code for eliminating stale data
>
> Yongliang Gao (1):
> rcu/cpu_stall_cputime: fix the hardirq count for x86 architecture
>
> Zqiang (2):
> MAINTAINERS: Update Zqiang's email address
> rcu/nocb: Add Safe checks for access offloaded rdp
Hi Joel
Should the following patch also be included in 6.16?
rcutorture: Fix rcutorture_one_extend_check() splat in RT kernels.
Thanks
Zqiang
>
> Documentation/RCU/listRCU.rst | 10 +-
> Documentation/RCU/whatisRCU.rst | 3 +
> Documentation/admin-guide/kernel-parameters.txt | 25 +++
> MAINTAINERS | 8 +-
> kernel/rcu/rcu.h | 18 +-
> kernel/rcu/rcuscale.c | 2 +-
> kernel/rcu/rcutorture.c | 206
> ++++++++++++++++-----
> kernel/rcu/srcutree.c | 2 +-
> kernel/rcu/tree.c | 84 +++++----
> kernel/rcu/tree.h | 3 +-
> kernel/rcu/tree_exp.h | 2 +-
> kernel/rcu/tree_nocb.h | 10 +-
> kernel/rcu/tree_plugin.h | 2 +-
> kernel/rcu/tree_stall.h | 4 +-
> rust/kernel/sync/rcu.rs | 5 +
> scripts/checkpatch.pl | 2 +
> .../selftests/rcutorture/bin/console-badness.sh | 2 +-
> .../selftests/rcutorture/bin/kvm-test-1-run.sh | 2 +-
> .../selftests/rcutorture/bin/parse-console.sh | 2 +-
> .../selftests/rcutorture/bin/srcu_lockdep.sh | 42 ++++-
> tools/testing/selftests/rcutorture/bin/torture.sh | 89 ++++++++-
> .../selftests/rcutorture/configs/rcu/TREE01 | 2 -
> .../selftests/rcutorture/configs/rcu/TREE01.boot | 2 +-
> 23 files changed, 403 insertions(+), 124 deletions(-)