[PATCH tip/core/rcu 0/24] Torture-test changes for 4.7

From: Paul E. McKenney
Date: Tue Apr 12 2016 - 11:43:19 EST


Hello!

This series contains torture-test changes for RCU, most notably a new
test for performance of RCU grace periods named "rcuperf":

1. Update scripting to accommodate rcuperf.

2. Allow for rcupdate.rcu_normal in rcu_torture_writer() decisions.

3. Expedited-GP batch progress access to torturing for progress
statistics.

4. Add RCU grace-period performance tests, AKA "rcuperf".

5. Documentation for rcuperf kernel parameters.

6. Bind rcuperf reader/writer kthreads to CPUs.

7. Set rcuperf writer kthreads to real-time priority.

8. Print measure of batching efficiency.

9. Make rcuperf collect expedited event-trace data.

10. Make scripts analyze rcuperf trace data, if present.

11. Add rcuperf holdoff boot parameter to reduce interference.

12. Avoid RCU CPU stall warning and RT throttling.

13. Add largish-system rcuperf scenario.

14. Do not wake up shutdown wait queue if "shutdown" is false, courtesy
of Artem Savkov.

15. Remove redundant initialization to zero.

16. Consider FROZEN hotplug notifier transitions, courtesy of
Anna-Maria Gleixner.

17. Clarify refusal to run more than one torture test.

18. Kill qemu, not parent process.

19. Convert test duration to seconds early.

20. Add OS-jitter capability.

21. Don't rebuild identical kernel.

22. Dump trace buffer upon shutdown.

23. Add irqs-disabled test for call_rcu().

24. Add boot-time adjustment of leaf fanout.

Thanx, Paul

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

Documentation/kernel-parameters.txt | 38
include/linux/rcutiny.h | 16
include/linux/rcutree.h | 2
kernel/rcu/Makefile | 1
kernel/rcu/rcuperf.c | 661 +++++++++-
kernel/rcu/rcutorture.c | 12
kernel/rcu/tree.c | 22
kernel/torture.c | 4
lib/Kconfig.debug | 33
tools/testing/selftests/rcutorture/bin/jitter.sh | 83 +
tools/testing/selftests/rcutorture/bin/kvm-recheck-rcuperf-ftrace.sh | 121 +
tools/testing/selftests/rcutorture/bin/kvm-recheck-rcuperf.sh | 116 +
tools/testing/selftests/rcutorture/bin/kvm-recheck.sh | 5
tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh | 61
tools/testing/selftests/rcutorture/bin/kvm.sh | 24
tools/testing/selftests/rcutorture/configs/rcu/TREE04 | 2
tools/testing/selftests/rcutorture/configs/rcu/TREE04.boot | 2
tools/testing/selftests/rcutorture/configs/rcuperf/CFLIST | 1
tools/testing/selftests/rcutorture/configs/rcuperf/CFcommon | 2
tools/testing/selftests/rcutorture/configs/rcuperf/TREE | 20
tools/testing/selftests/rcutorture/configs/rcuperf/TREE54 | 23
tools/testing/selftests/rcutorture/configs/rcuperf/ver_functions.sh | 52
22 files changed, 1260 insertions(+), 41 deletions(-)