[PATCH memory-model 0/31] LKMM scripting updates for v6.4

From: Paul E. McKenney
Date: Mon Mar 20 2023 - 21:06:34 EST


Hello!

This series provides scripting updates that ease validating
the effects of changes to LKMM:

1. tools/memory-model: Document locking corner cases.

2. tools/memory-model: Make judgelitmus.sh note timeouts.

3. tools/memory-model: Make cmplitmushist.sh note timeouts.

4. tools/memory-model: Make judgelitmus.sh identify bad macros.

5. tools/memory-model: Make judgelitmus.sh detect hard deadlocks.

6. tools/memory-model: Fix paulmck email address on pre-existing
scripts.

7. tools/memory-model: Update parseargs.sh for hardware verification.

8. tools/memory-model: Make judgelitmus.sh handle hardware
verifications.

9. tools/memory-model: Add simpletest.sh to check locking, RCU,
and SRCU.

10. tools/memory-model: Fix checkalllitmus.sh comment.

11. tools/memory-model: Hardware checking for check{,all}litmus.sh.

12. tools/memory-model: Make judgelitmus.sh ransack .litmus.out files.

13. tools/memory-model: Split runlitmus.sh out of checklitmus.sh.

14. tools/memory-model: Make runlitmus.sh generate .litmus.out
for --hw.

15. tools/memory-model: Move from .AArch64.litmus.out to
.litmus.AArch.out.

16. tools/memory-model: Keep assembly-language litmus tests.

17. tools/memory-model: Allow herd to deduce CPU type.

18. tools/memory-model: Make runlitmus.sh check for jingle errors.

19. tools/memory-model: Add -v flag to jingle7 runs.

20. tools/memory-model: Implement --hw support for checkghlitmus.sh.

21. tools/memory-model: Fix scripting --jobs argument.

22. tools/memory-model: Make checkghlitmus.sh use mselect7.

23. tools/memory-model: Make history-check scripts use mselect7.

24. tools/memory-model: Add "--" to parseargs.sh for additional
arguments.

25. tools/memory-model: Repair parseargs.sh header comment.

26. tools/memory-model: Add checktheselitmus.sh to run specified
litmus tests.

27. tools/memory-model: Add data-race capabilities to judgelitmus.sh.

28. tools/memory-model: Make judgelitmus.sh handle scripted Result:
tag.

29. tools/memory-model: Use "-unroll 0" to keep --hw runs finite.

30. tools/memory-model: Use "grep -E" instead of "egrep", courtesy
of Tiezhu Yang.

31. tools/memory-model: Document LKMM test procedure.

Thanx, Paul

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

b/Documentation/litmus-tests/locking/DCL-broken.litmus | 55 ++
b/Documentation/litmus-tests/locking/DCL-fixed.litmus | 56 ++
b/Documentation/litmus-tests/locking/RM-broken.litmus | 42 ++
b/Documentation/litmus-tests/locking/RM-fixed.litmus | 42 ++
b/tools/memory-model/Documentation/locking.txt | 320 +++++++++++++++++
b/tools/memory-model/litmus-tests/.gitignore | 2
b/tools/memory-model/scripts/README | 8
b/tools/memory-model/scripts/checkalllitmus.sh | 2
b/tools/memory-model/scripts/checkghlitmus.sh | 9
b/tools/memory-model/scripts/checklitmus.sh | 2
b/tools/memory-model/scripts/checklitmushist.sh | 2
b/tools/memory-model/scripts/checktheselitmus.sh | 43 ++
b/tools/memory-model/scripts/cmplitmushist.sh | 22 +
b/tools/memory-model/scripts/hwfnseg.sh | 20 +
b/tools/memory-model/scripts/initlitmushist.sh | 2
b/tools/memory-model/scripts/judgelitmus.sh | 8
b/tools/memory-model/scripts/newlitmushist.sh | 2
b/tools/memory-model/scripts/parseargs.sh | 2
b/tools/memory-model/scripts/runlitmus.sh | 69 +++
b/tools/memory-model/scripts/runlitmushist.sh | 2
b/tools/memory-model/scripts/simpletest.sh | 35 +
tools/memory-model/litmus-tests/.gitignore | 2
tools/memory-model/scripts/README | 40 ++
tools/memory-model/scripts/checkalllitmus.sh | 27 -
tools/memory-model/scripts/checkghlitmus.sh | 6
tools/memory-model/scripts/checklitmus.sh | 99 ++---
tools/memory-model/scripts/cmplitmushist.sh | 31 +
tools/memory-model/scripts/judgelitmus.sh | 156 ++++++--
tools/memory-model/scripts/newlitmushist.sh | 2
tools/memory-model/scripts/parseargs.sh | 19 -
tools/memory-model/scripts/runlitmus.sh | 75 ++-
tools/memory-model/scripts/runlitmushist.sh | 27 -
32 files changed, 1044 insertions(+), 185 deletions(-)