]> Gentwo Git Trees - linux/.git/commit
srcu: Make SRCU-fast readers enforce use of SRCU-fast definition/init
authorPaul E. McKenney <paulmck@kernel.org>
Wed, 5 Nov 2025 20:32:08 +0000 (12:32 -0800)
committerFrederic Weisbecker <frederic@kernel.org>
Wed, 5 Nov 2025 22:58:28 +0000 (23:58 +0100)
commitac51c40c2c148a75f3191ff401c9889a7fc12cb1
tree0182fb55fc012a092ff2f36c94a64ef29e224242
parent8235bcfd39e865763e764b4c968012bdfb808af1
srcu: Make SRCU-fast readers enforce use of SRCU-fast definition/init

This commit makes CONFIG_PROVE_RCU=y kernels enforce the new rule
that srcu_struct structures that are passed to srcu_read_lock_fast()
and other SRCU-fast read-side markers be either initialized with
init_srcu_struct_fast() on the one hand or defined with DEFINE_SRCU_FAST()
or DEFINE_STATIC_SRCU_FAST() on the other.

This eliminates the read-side test that was formerly included in
srcu_read_lock_fast() and friends, speeding these primitives up by
about 25% (admittedly only about half of a nanosecond, but when tracing
on fastpaths...)

Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Cc: <bpf@vger.kernel.org>
Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
include/linux/srcu.h
include/linux/srcutiny.h
include/linux/srcutree.h