[PATCH tip/core/rcu 0/26] Torture-test updates for v5.14

From: Paul E. McKenney
Date: Tue May 11 2021 - 19:11:52 EST


Hello!

This series provides torture-test updates:

1. Fix remaining erroneous torture.sh instance of $*.

2. Add "scenarios" option to kvm.sh --dryrun parameter.

3. Make kvm-again.sh use "scenarios" rather than "batches" file.

4. Allow CPU hotplug to be enabled.

5. Allow CPU hotplug to be enabled.

6. Add kvm-remote.sh script for distributed rcutorture test runs.

7. Add acqrel, lock, and lock-irq.

8. Abstract read-lock-held checks.

9. Fix grace-period rate output.

10. Abstract end-of-run summary.

11. Make kvm.sh use abstracted kvm-end-run-stats.sh.

12. Make the build machine control N in "make -jN".

13. Make kvm-find-errors.sh account for kvm-remote.sh.

14. Judge RCU priority boosting on grace periods, not callbacks.

15. Correctly fetch number of CPUs for non-English languages,
courtesy of Frederic Weisbecker.

16. Set kvm.sh language to English.

17. Delay-based false positives for RCU priority boosting tests.

18. Consolidate rcu_torture_boost() timing and statistics.

19. Make rcu_torture_boost_failed() check for GP end.

20. Add BUSTED-BOOST to test RCU priority boosting tests.

21. Forgive RCU boost failures when CPUs don't pass through QS.

22. Don't count CPU-stalled time against priority boosting.

23. Make kvm-remote.sh account for network failure in pathname checks.

24. Don't cap remote runs by build-system number of CPUs.

25. Move mem_dump_obj() tests into separate function.

26. Don't penalize priority boosting when there is nothing to boost.

Thanx, Paul

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

b/kernel/rcu/rcu.h | 2
b/kernel/rcu/rcutorture.c | 29
b/kernel/rcu/refscale.c | 109 +++
b/kernel/rcu/tree_stall.h | 36 +
b/tools/testing/selftests/rcutorture/bin/kvm-again.sh | 22
b/tools/testing/selftests/rcutorture/bin/kvm-build.sh | 6
b/tools/testing/selftests/rcutorture/bin/kvm-end-run-stats.sh | 40 +
b/tools/testing/selftests/rcutorture/bin/kvm-find-errors.sh | 2
b/tools/testing/selftests/rcutorture/bin/kvm-recheck-rcu.sh | 2
b/tools/testing/selftests/rcutorture/bin/kvm-remote.sh | 227 +++++++
b/tools/testing/selftests/rcutorture/bin/kvm.sh | 28
b/tools/testing/selftests/rcutorture/bin/torture.sh | 2
b/tools/testing/selftests/rcutorture/configs/rcu/BUSTED-BOOST | 17
b/tools/testing/selftests/rcutorture/configs/rcu/BUSTED-BOOST.boot | 8
b/tools/testing/selftests/rcutorture/configs/rcuscale/TREE | 2
b/tools/testing/selftests/rcutorture/configs/rcuscale/TREE54 | 2
b/tools/testing/selftests/rcutorture/configs/refscale/NOPREEMPT | 2
b/tools/testing/selftests/rcutorture/configs/refscale/PREEMPT | 2
kernel/rcu/rcutorture.c | 300 +++++-----
kernel/rcu/tree_stall.h | 27
tools/testing/selftests/rcutorture/bin/kvm-again.sh | 11
tools/testing/selftests/rcutorture/bin/kvm-build.sh | 2
tools/testing/selftests/rcutorture/bin/kvm-remote.sh | 30 -
tools/testing/selftests/rcutorture/bin/kvm.sh | 33 -
24 files changed, 726 insertions(+), 215 deletions(-)