diff options
author | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2015-03-12 16:55:48 -0400 |
---|---|---|
committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2015-05-27 15:59:57 -0400 |
commit | 3838cc1850ccd09f93e729e9047ec1995026f83e (patch) | |
tree | 10c704c147266b9083bc0f9a16e51116847057f4 /kernel/rcu | |
parent | 6530b3f4c5043aa8ef66faa8296291b1ea6ba2eb (diff) |
rcutorture: Allow negative values of nreaders to oversubscribe
By default, with rcutorture.nreaders equal to -1, rcutorture provisions
N-1 reader kthreads, where N is the number of CPUs. This avoids
rcutorture-induced stalls, but also avoids heavier levels of torture.
This commit therefore allows negative values of rcutorture.nreaders
to specify larger numbers of reader kthreads, so that for example
rcutorture.nreaders=-2 provisions N kthreads and rcutorture.nreaders=-5
provisions N+3 kthreads.
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
[ paulmck: Update documentation, as suggested by Josh Triplett. ]
Diffstat (limited to 'kernel/rcu')
-rw-r--r-- | kernel/rcu/rcutorture.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/rcu/rcutorture.c b/kernel/rcu/rcutorture.c index a67ef6ff86b0..7294d605c481 100644 --- a/kernel/rcu/rcutorture.c +++ b/kernel/rcu/rcutorture.c | |||
@@ -1701,7 +1701,7 @@ rcu_torture_init(void) | |||
1701 | if (nreaders >= 0) { | 1701 | if (nreaders >= 0) { |
1702 | nrealreaders = nreaders; | 1702 | nrealreaders = nreaders; |
1703 | } else { | 1703 | } else { |
1704 | nrealreaders = num_online_cpus() - 1; | 1704 | nrealreaders = num_online_cpus() - 2 - nreaders; |
1705 | if (nrealreaders <= 0) | 1705 | if (nrealreaders <= 0) |
1706 | nrealreaders = 1; | 1706 | nrealreaders = 1; |
1707 | } | 1707 | } |