[PATCH tip/core/rcu 07/12] rcu: Create RCU_EXPERT Kconfig and hide booleans behind it

From: Paul E. McKenney
Date: Tue Apr 21 2015 - 15:58:49 EST


From: "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx>

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 <torvalds@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
---
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 majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/