rcutorture: Emphasize testing of single reader protection type
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Sun, 10 Jun 2018 15:50:09 +0000 (08:50 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Thu, 12 Jul 2018 22:42:05 +0000 (15:42 -0700)
commitbf1bef50bee13b2292929f4b86118302a3827a32
tree34175108e6275f368cf0845bf833078addb4da96
parent2397d072f76b552fc21cda19686d24a8066ced22
rcutorture: Emphasize testing of single reader protection type

For RCU implementations supporting multiple types of reader protection,
rcutorture currently randomly selects the combinations of types of
protection for each phase of each reader.  The problem with this,
for example, given the four kinds of protection for RCU-sched
(local_irq_disable(), local_bh_disable(), preempt_disable(), and
rcu_read_lock_sched()), the reader will be protected by a single
mechanism only 25% of the time.  We really heavier testing of single
read-side mechanisms.

This commit therefore uses only a single mechanism about 60% of the time,
half of the time explicitly and one-eighth of the time by chance.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
kernel/rcu/rcutorture.c