rcu: make rcutorture more vicious: add stutter feature
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Wed, 18 Jun 2008 12:21:44 +0000 (05:21 -0700)
committerIngo Molnar <mingo@elte.hu>
Wed, 18 Jun 2008 13:06:56 +0000 (15:06 +0200)
commitd120f65f3aaf306c957bc4c82e510f5b0f1e9b27
tree4b10376660bbfdb4ed8c79b17d0c1abc93b44089
parent5af970a48f3ba0dd96a036b196c79dc923f28231
rcu: make rcutorture more vicious: add stutter feature

This patch takes a step towards making rcutorture more brutal by allowing
the test to be automatically periodically paused, with the default being
to run the test for five seconds then pause for five seconds and repeat.
This behavior can be controlled using a new "stutter" module parameter, so
that "stutter=0" gives the old default behavior of running continuously.

Starting and stopping rcutorture more heavily stresses RCU's interaction
with the scheduler, as well as exercising more paths through the
grace-period detection code.

Note that the default to "shuffle_interval" has also been adjusted from
5 seconds to 3 seconds to provide varying overlap with the "stutter"
interval.

I am still unable to provoke the failures that Alexey has been seeing,
even with this patch, but will be doing a few additional things to beef
up rcutorture.

Suggested-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Documentation/RCU/torture.txt
kernel/rcutorture.c