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 9871e649ffeffe8798cd20a1450377a4f4777fca..aa96e669bcb810a1c179891f02e78f3fca45a0c0 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 9ea87d0aa3860aa7247bab667157c4e58d19d9c2..ee366faecea6d537322c0fc114d7b6c67e30e0ab 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 6c1a292a65fb499968bd2495fa046aedb02b39f8..b39f1553a478c7c2a81493d017dacc093fa283df 100644 (file)
@@ -1,3 +1 @@
 rcupdate.rcu_self_test=1
-rcupdate.rcu_self_test_bh=1
-rcutorture.torture_type=rcu_bh
index 9f3a4d28e508e167ba4ebb1c1d7e696d08f03090..ea47da95374b3990180ee56a6a9e85a9eba1748c 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 e6071bb96c7dbdb5145370a16957505804f05acf..5adc6756792a0a13a3021f0a6d8c851f85bd89b2 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 c7fd050dfcd994cbbc924aeff35fb479d2b4e765..779f1aed46067c9819179774780b5683d50c94a8 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 ad18b52a2cad1f8fe2b8bb2e9aef25866ba3f426..055f4aa79077ed07780cf1d19aa9fc9b3a921812 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 1bd8efc4141ec1a0e9f89805fadad91c556e2ab8..22478fd3a86588f1b902e663f0cf07773558bf4e 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