rcu: Stop testing RCU-bh and RCU-sched
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Sat, 7 Jul 2018 17:24:23 +0000 (10:24 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Thu, 30 Aug 2018 23:03:29 +0000 (16:03 -0700)
Now that the RCU-bh and RCU-sched update-side functions are simple
wrappers around their RCU counterparts, there isn't a whole lot of
point in testing them.  This commit therefore removes the self-test
capability and removes the corresponding kernel-boot parameters.
It also updates the various rcutorture .boot files to remove the
kernel boot parameters that call for testing RCU-bh and RCU-sched.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Documentation/admin-guide/kernel-parameters.txt
kernel/rcu/update.c
tools/testing/selftests/rcutorture/configs/rcu/TINY02.boot
tools/testing/selftests/rcutorture/configs/rcu/TREE01.boot
tools/testing/selftests/rcutorture/configs/rcu/TREE04.boot
tools/testing/selftests/rcutorture/configs/rcu/TREE05.boot
tools/testing/selftests/rcutorture/configs/rcu/TREE06.boot
tools/testing/selftests/rcutorture/configs/rcu/TREE08.boot

index 9871e64..aa96e66 100644 (file)
        rcupdate.rcu_self_test= [KNL]
                        Run the RCU early boot self tests
 
-       rcupdate.rcu_self_test_bh= [KNL]
-                       Run the RCU bh early boot self tests
-
-       rcupdate.rcu_self_test_sched= [KNL]
-                       Run the RCU sched early boot self tests
-
        rdinit=         [KNL]
                        Format: <full_path>
                        Run specified binary instead of /init from the ramdisk,
index 9ea87d0..ee366fa 100644 (file)
@@ -203,11 +203,7 @@ void rcu_test_sync_prims(void)
        if (!IS_ENABLED(CONFIG_PROVE_RCU))
                return;
        synchronize_rcu();
-       synchronize_rcu_bh();
-       synchronize_sched();
        synchronize_rcu_expedited();
-       synchronize_rcu_bh_expedited();
-       synchronize_sched_expedited();
 }
 
 #if !defined(CONFIG_TINY_RCU) || defined(CONFIG_SRCU)
@@ -870,15 +866,10 @@ static void __init rcu_tasks_bootup_oddness(void)
 #ifdef CONFIG_PROVE_RCU
 
 /*
- * Early boot self test parameters, one for each flavor
+ * Early boot self test parameters.
  */
 static bool rcu_self_test;
-static bool rcu_self_test_bh;
-static bool rcu_self_test_sched;
-
 module_param(rcu_self_test, bool, 0444);
-module_param(rcu_self_test_bh, bool, 0444);
-module_param(rcu_self_test_sched, bool, 0444);
 
 static int rcu_self_test_counter;
 
@@ -895,30 +886,12 @@ static void early_boot_test_call_rcu(void)
        call_rcu(&head, test_callback);
 }
 
-static void early_boot_test_call_rcu_bh(void)
-{
-       static struct rcu_head head;
-
-       call_rcu_bh(&head, test_callback);
-}
-
-static void early_boot_test_call_rcu_sched(void)
-{
-       static struct rcu_head head;
-
-       call_rcu_sched(&head, test_callback);
-}
-
 void rcu_early_boot_tests(void)
 {
        pr_info("Running RCU self tests\n");
 
        if (rcu_self_test)
                early_boot_test_call_rcu();
-       if (rcu_self_test_bh)
-               early_boot_test_call_rcu_bh();
-       if (rcu_self_test_sched)
-               early_boot_test_call_rcu_sched();
        rcu_test_sync_prims();
 }
 
@@ -931,15 +904,6 @@ static int rcu_verify_early_boot_tests(void)
                early_boot_test_counter++;
                rcu_barrier();
        }
-       if (rcu_self_test_bh) {
-               early_boot_test_counter++;
-               rcu_barrier_bh();
-       }
-       if (rcu_self_test_sched) {
-               early_boot_test_counter++;
-               rcu_barrier_sched();
-       }
-
        if (rcu_self_test_counter != early_boot_test_counter) {
                WARN_ON(1);
                ret = -1;
index 9f3a4d2..ea47da9 100644 (file)
@@ -1,4 +1,4 @@
-rcutorture.torture_type=rcu_bh maxcpus=8 nr_cpus=43
+maxcpus=8 nr_cpus=43
 rcutree.gp_preinit_delay=3
 rcutree.gp_init_delay=3
 rcutree.gp_cleanup_delay=3
index e6071bb..5adc675 100644 (file)
@@ -1 +1 @@
-rcutorture.torture_type=rcu_bh rcutree.rcu_fanout_leaf=4 nohz_full=1-7
+rcutree.rcu_fanout_leaf=4 nohz_full=1-7
index c7fd050..779f1ae 100644 (file)
@@ -1,5 +1,3 @@
-rcutorture.torture_type=sched
-rcupdate.rcu_self_test_sched=1
 rcutree.gp_preinit_delay=3
 rcutree.gp_init_delay=3
 rcutree.gp_cleanup_delay=3
index ad18b52..055f4aa 100644 (file)
@@ -1,6 +1,4 @@
 rcupdate.rcu_self_test=1
-rcupdate.rcu_self_test_bh=1
-rcupdate.rcu_self_test_sched=1
 rcutree.rcu_fanout_exact=1
 rcutree.gp_preinit_delay=3
 rcutree.gp_init_delay=3
index 1bd8efc..22478fd 100644 (file)
@@ -1,5 +1,3 @@
-rcutorture.torture_type=sched
 rcupdate.rcu_self_test=1
-rcupdate.rcu_self_test_sched=1
 rcutree.rcu_fanout_exact=1
 rcu_nocbs=0-7