mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v3 0/2] Documentation/litmus-tests: Add SRCU fastpath litmus tests
@ 2026-09-14 14:39 Kunwu Chan
  2026-09-14 14:39 ` [PATCH v3 1/2] Documentation/litmus-tests: Add SRCU fastpath anchor-before-scan test Kunwu Chan
  2026-09-14 14:39 ` [PATCH v3 2/2] Documentation/litmus-tests: Add SRCU fastpath scan-before-anchor test Kunwu Chan
  0 siblings, 2 replies; 5+ messages in thread
From: Kunwu Chan @ 2026-09-14 14:39 UTC (permalink / raw)
  To: paulmck, dlustig, joelagnelf, corbet, akiyks, luc.maranget,
	j.alglave, dhowells, npiggin, boqun, peterz, will, parri.andrea,
	stern
  Cc: linux-doc, lkmm, linux-arch, linux-kernel, rdunlap, skhan, Kunwu Chan

This series moves the SRCU fastpath litmus tests from
tools/memory-model/litmus-tests/ to Documentation/litmus-tests/srcu/,
as suggested by Paul McKenney.

This series splits the two litmus-test patches from the earlier
[PATCH 00/13] srcu: Round out atomic SRCU support series:
https://lore.kernel.org/rcu/20260907075829.2073224-1-kunwu.chan@linux.dev/

The two tests verify the memory ordering required by the reader-free
synchronize_srcu_atomic() fastpath: the grace-period anchor must be
ordered before the per-CPU lock-counter scan.

Patch 1 verifies that the anchor-before-scan ordering forbids a reader
from being missed by the scan, while patch 2 shows that reversing the
ordering permits the problematic outcome.

Changes in v3:
- Add a critical-section write after the smp_mb() in P1 of both
  litmus tests, so the barrier properly models the lock-increment
  to critical-section ordering in __srcu_read_lock().  The smp_mb()
  was previously vacuous because P1 had no subsequent memory access.
  Suggested by Akira Yokosawa.
- Adjust indentation of the SRCU entries in litmus-tests/README.
-v2: https://lore.kernel.org/all/20260912024225.2872265-1-kunwu.chan@gmail.com/

Changes in v2:
- Use a filter for the P0 scan result, as suggested by Paul McKenney.

Tested with herd7 7.58 using linux-kernel.cfg.
 
Kunwu Chan (2):
  Documentation/litmus-tests: Add SRCU fastpath anchor-before-scan test
  Documentation/litmus-tests: Add SRCU fastpath scan-before-anchor test

 Documentation/litmus-tests/README             | 21 +++++++
 .../SRCU-fastpath-anchor-before-scan.litmus   | 58 +++++++++++++++++++
 .../SRCU-fastpath-scan-before-anchor.litmus   | 56 ++++++++++++++++++
 3 files changed, 135 insertions(+)
 create mode 100644 Documentation/litmus-tests/srcu/SRCU-fastpath-anchor-before-scan.litmus
 create mode 100644 Documentation/litmus-tests/srcu/SRCU-fastpath-scan-before-anchor.litmus

-- 
2.43.0


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-09-16  8:46 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-14 14:39 [PATCH v3 0/2] Documentation/litmus-tests: Add SRCU fastpath litmus tests Kunwu Chan
2026-09-14 14:39 ` [PATCH v3 1/2] Documentation/litmus-tests: Add SRCU fastpath anchor-before-scan test Kunwu Chan
2026-09-15  8:33   ` Akira Yokosawa
2026-09-16  8:46     ` KunWu Chan
2026-09-14 14:39 ` [PATCH v3 2/2] Documentation/litmus-tests: Add SRCU fastpath scan-before-anchor test Kunwu Chan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®