From: "Paul E. McKenney" <paul...@linux.vnet.ibm.com>

This commit creates an RCU_EXPERT Kconfig and hides the boolean
RCU-related user-visible Kconfig parameters behind it, namely
RCU_FAST_NO_HZ, RCU_BOOST, CONTEXT_TRACKING_FORCE, and RCU_NOCB_CPU.
This prevents Kconfig from asking about these parameters unless the user
really wants to be asked.

Reported-by: Linus Torvalds <torva...@linux-foundation.org>
Signed-off-by: Paul E. McKenney <paul...@linux.vnet.ibm.com>
---
 init/Kconfig | 23 +++++++++++++++++++----
 1 file changed, 19 insertions(+), 4 deletions(-)

diff --git a/init/Kconfig b/init/Kconfig
index 67598f3143f5..aa68d72fe051 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -499,6 +499,21 @@ config TINY_RCU
 
 endchoice
 
+config RCU_EXPERT
+       bool "Make expert-level adjustments to RCU configuration"
+       default n
+       help
+         This option needs to be enabled if you wish to make
+         expert-level adjustments to RCU configuration.  By default,
+         no such adjustments can be made, which has the often-beneficial
+         side-effect of preventing "make oldconfig" from asking you all
+         sorts of detailed questions about how you would like numerous
+         obscure RCU options to be set up.
+
+         Say Y if you need to make expert-level adjustments to RCU.
+
+         Say N if you are unsure.
+
 config SRCU
        bool
        help
@@ -537,7 +552,7 @@ config RCU_USER_QS
 
 config CONTEXT_TRACKING_FORCE
        bool "Force context tracking"
-       depends on CONTEXT_TRACKING
+       depends on CONTEXT_TRACKING && RCU_EXPERT
        default y if !NO_HZ_FULL
        help
          The major pre-requirement for full dynticks to work is to
@@ -611,7 +626,7 @@ config RCU_FANOUT_LEAF
 
 config RCU_FAST_NO_HZ
        bool "Accelerate last non-dyntick-idle CPU's grace periods"
-       depends on NO_HZ_COMMON && SMP
+       depends on NO_HZ_COMMON && SMP && RCU_EXPERT
        default n
        help
          This option permits CPUs to enter dynticks-idle state even if
@@ -637,7 +652,7 @@ config TREE_RCU_TRACE
 
 config RCU_BOOST
        bool "Enable RCU priority boosting"
-       depends on RT_MUTEXES && PREEMPT_RCU
+       depends on RT_MUTEXES && PREEMPT_RCU && RCU_EXPERT
        default n
        help
          This option boosts the priority of preempted RCU readers that
@@ -693,7 +708,7 @@ config RCU_BOOST_DELAY
 
 config RCU_NOCB_CPU
        bool "Offload RCU callback processing from boot-selected CPUs"
-       depends on TREE_RCU || PREEMPT_RCU
+       depends on (TREE_RCU || PREEMPT_RCU) && RCU_EXPERT
        default n
        help
          Use this option to reduce OS jitter for aggressive HPC or
-- 
1.8.1.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to