rcu: Remove the now-obsolete PROVE_RCU_REPEATEDLY Kconfig option
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Fri, 12 May 2017 21:37:19 +0000 (14:37 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Fri, 9 Jun 2017 01:52:41 +0000 (18:52 -0700)
The PROVE_RCU_REPEATEDLY Kconfig option was initially added due to
the volume of messages from PROVE_RCU: Doing just one per boot would
have required excessive numbers of boots to locate them all.  However,
PROVE_RCU messages are now relatively rare, so there is no longer any
reason to need more than one such message per boot.  This commit therefore
removes the PROVE_RCU_REPEATEDLY Kconfig option.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Ingo Molnar <mingo@kernel.org>
kernel/locking/lockdep.c
kernel/rcu/tree_plugin.h
lib/Kconfig.debug
tools/testing/selftests/rcutorture/configs/rcu/TINY02
tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt

index cceb9534338abc1e6634b658aaf6a44cb0d83710..7d2499bec5fe662f6bf1c103e5fb33e1b5c15d70 100644 (file)
@@ -4490,10 +4490,6 @@ void lockdep_rcu_suspicious(const char *file, const int line, const char *s)
 {
        struct task_struct *curr = current;
 
-#ifndef CONFIG_PROVE_RCU_REPEATEDLY
-       if (!debug_locks_off())
-               return;
-#endif /* #ifdef CONFIG_PROVE_RCU_REPEATEDLY */
        /* Note: the following can be executed concurrently, so be careful. */
        pr_warn("\n");
        pr_warn("=============================\n");
index f524d967f7b6d9bbe55d0d209817871d42cc8201..7f5919ab24c4de3803eb433395f17ed45e53c043 100644 (file)
@@ -79,9 +79,7 @@ static void __init rcu_bootup_announce_oddness(void)
                pr_info("\tHierarchical RCU autobalancing is disabled.\n");
        if (IS_ENABLED(CONFIG_RCU_FAST_NO_HZ))
                pr_info("\tRCU dyntick-idle grace-period acceleration is enabled.\n");
-       if (IS_ENABLED(CONFIG_PROVE_RCU_REPEATEDLY))
-               pr_info("\tRCU lockdep checking is permanently enabled.\n");
-       else if (IS_ENABLED(CONFIG_PROVE_RCU))
+       if (IS_ENABLED(CONFIG_PROVE_RCU))
                pr_info("\tRCU lockdep checking is enabled.\n");
        if (RCU_NUM_LVLS >= 4)
                pr_info("\tFour(or more)-level hierarchy is enabled.\n");
index 960c5d2d3c0331d81a77d238389ff4e5602d854b..762deab304fe7bea75e25b6dc6fc6383f4310568 100644 (file)
@@ -1306,20 +1306,6 @@ menu "RCU Debugging"
 config PROVE_RCU
        def_bool PROVE_LOCKING
 
-config PROVE_RCU_REPEATEDLY
-       bool "RCU debugging: don't disable PROVE_RCU on first splat"
-       depends on PROVE_RCU
-       default n
-       help
-        By itself, PROVE_RCU will disable checking upon issuing the
-        first warning (or "splat").  This feature prevents such
-        disabling, allowing multiple RCU-lockdep warnings to be printed
-        on a single reboot.
-
-        Say Y to allow multiple RCU-lockdep warnings per boot.
-
-        Say N if you are unsure.
-
 config SPARSE_RCU_POINTER
        bool "RCU debugging: sparse-based checks for pointer usage"
        default n
index 9007cd979df754745b33dd54e164ae042b57f637..1f6bebbf5da80a12ecaf8c7bad93cff806365a0c 100644 (file)
@@ -8,7 +8,6 @@ CONFIG_NO_HZ_IDLE=n
 CONFIG_NO_HZ_FULL=n
 CONFIG_RCU_TRACE=y
 CONFIG_PROVE_LOCKING=y
-CONFIG_PROVE_RCU_REPEATEDLY=y
 #CHECK#CONFIG_PROVE_RCU=y
 CONFIG_DEBUG_LOCK_ALLOC=y
 CONFIG_DEBUG_OBJECTS=y
index 519e06d34d0b9a038fb2794f14905be2af33e19a..b778a28f1386c0e7bfa93afa09d7f01a394819bc 100644 (file)
@@ -13,7 +13,6 @@ CONFIG_NO_HZ_FULL -- Do two, one with partial CPU enablement.
 CONFIG_PREEMPT -- Do half.  (First three and #8.)
 CONFIG_PROVE_LOCKING -- Do several, covering CONFIG_DEBUG_LOCK_ALLOC=y and not.
 CONFIG_PROVE_RCU -- Hardwired to CONFIG_PROVE_LOCKING.
-CONFIG_PROVE_RCU_REPEATEDLY -- Do one.
 CONFIG_RCU_BOOST -- one of PREEMPT_RCU.
 CONFIG_RCU_FANOUT -- Cover hierarchy, but overlap with others.
 CONFIG_RCU_FANOUT_LEAF -- Do one non-default.