Commit 58524e0f authored by Paul E. McKenney's avatar Paul E. McKenney
Browse files

rcutorture: Allow specifying per-scenario stat_interval



The rcutorture test suite makes double use of the rcutorture.stat_interval
module parameter.  As its name suggests, it controls the frequency
of statistics printing, but it also controls the rcu_torture_writer()
stall timeout.  The current setting of 15 seconds works surprisingly well.
However, given that the RCU tasks stall-warning timeout is ten -minutes-,
15 seconds is too short for TASKS02, which runs a non-preemptible kernel
on a single CPU.

This commit therefore adds checks for per-scenario specification of the
rcutorture.stat_interval module parameter.

Signed-off-by: default avatarPaul E. McKenney <paulmck@kernel.org>
parent 3831fc02
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
rcutorture.torture_type=tasks
rcutorture.stat_interval=60
+14 −2
Original line number Diff line number Diff line
@@ -9,7 +9,7 @@

# rcutorture_param_n_barrier_cbs bootparam-string
#
# Adds n_barrier_cbs rcutorture module parameter to kernels having it.
# Adds n_barrier_cbs rcutorture module parameter if not already specified.
rcutorture_param_n_barrier_cbs () {
	if echo $1 | grep -q "rcutorture\.n_barrier_cbs"
	then
@@ -30,13 +30,25 @@ rcutorture_param_onoff () {
	fi
}

# rcutorture_param_stat_interval bootparam-string
#
# Adds stat_interval rcutorture module parameter if not already specified.
rcutorture_param_stat_interval () {
	if echo $1 | grep -q "rcutorture\.stat_interval"
	then
		:
	else
		echo rcutorture.stat_interval=15
	fi
}

# per_version_boot_params bootparam-string config-file seconds
#
# Adds per-version torture-module parameters to kernels supporting them.
per_version_boot_params () {
	echo $1 `rcutorture_param_onoff "$1" "$2"` \
		`rcutorture_param_n_barrier_cbs "$1"` \
		rcutorture.stat_interval=15 \
		`rcutorture_param_stat_interval "$1"` \
		rcutorture.shutdown_secs=$3 \
		rcutorture.test_no_idle_hz=1 \
		rcutorture.verbose=1