[PATCH 3/3] rcu: Drive configuration directly from SMP and PREEMPT

From: John Kacur
Date: Sat Nov 19 2011 - 07:50:49 EST


From: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>

This commit eliminates the possibility of running TREE_PREEMPT_RCU
when SMP=n and of running TINY_RCU when PREEMPT=y. People who really
want these combinations can hand-edit init/Kconfig, but eliminating
them as choices for production systems reduces the amount of testing
required. It will also allow cutting out a few #ifdefs.

Note that running TREE_RCU and TINY_RCU on single-CPU systems using
SMP-built kernels is still supported.

Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>

commit 8008e129dc90ff4f7a56cb033d6bd042afe3ed52 upstream
Cherry-picked for v3.0-rt and fixed-up merge conflicts
Note: This makes the depends lines for these options in init/Kconfig for v3.0-rt
match those for v3.2-rc2-rt3
Signed-off-by: John Kacur <jkacur@xxxxxxxxxx>
---
init/Kconfig | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/init/Kconfig b/init/Kconfig
index 89e40a4..5c1147e 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -391,7 +391,7 @@ config TREE_RCU

config TREE_PREEMPT_RCU
bool "Preemptible tree-based hierarchical RCU"
- depends on PREEMPT
+ depends on PREEMPT && SMP
help
This option selects the RCU implementation that is
designed for very large SMP systems with hundreds or
@@ -401,7 +401,7 @@ config TREE_PREEMPT_RCU

config TINY_RCU
bool "UP-only small-memory-footprint RCU"
- depends on !SMP && !PREEMPT_RT_FULL
+ depends on !PREEMPT && !SMP
help
This option selects the RCU implementation that is
designed for UP systems from which real-time response
@@ -410,7 +410,7 @@ config TINY_RCU

config TINY_PREEMPT_RCU
bool "Preemptible UP-only small-memory-footprint RCU"
- depends on !SMP && PREEMPT && !PREEMPT_RT_FULL
+ depends on PREEMPT && !SMP
help
This option selects the RCU implementation that is designed
for real-time UP systems. This option greatly reduces the
--
1.7.2.3

--
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/