]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
refscale: Add non-atomic per-CPU increment readers
authorPaul E. McKenney <paulmck@kernel.org>
Sun, 2 Nov 2025 22:49:46 +0000 (14:49 -0800)
committerFrederic Weisbecker <frederic@kernel.org>
Fri, 7 Nov 2025 13:37:17 +0000 (14:37 +0100)
commit448b66a7aaf33cf52dc47dd7807652ce827e8dfd
treed7fe6db40b3702be69b8074e51a4293db156e48f
parentbdba8330ad705ae0e08150892fb1e2de48406630
refscale: Add non-atomic per-CPU increment readers

This commit adds refscale readers based on READ_ONCE() and WRITE_ONCE()
that are unprotected (can lose counts, "refscale.scale_type=incpercpu"),
preempt-disabled ("refscale.scale_type=incpercpupreempt"),
bh-disabled ("refscale.scale_type=incpercpubh"), and irq-disabled
("refscale.scale_type=incpercpuirqsave").  On my x86 laptop, these are
about 4.3ns, 3.8ns, and 7.3ns per pair, respectively.

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