diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-12-25 03:31:28 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-12-25 03:31:28 -0500 |
commit | 12d79bafb75639f406a9f71aab94808c414c836e (patch) | |
tree | 2d7ba81720be2ec8c897dd3ab6781cccd973249c /kernel/Kconfig.preempt | |
parent | 64db4cfff99c04cd5f550357edcc8780f96b54a2 (diff) |
rcu: provide RCU options on non-preempt architectures too
Impact: build fix
Some old architectures still do not use kernel/Kconfig.preempt, so the
moving of the RCU options there broke their build:
In file included from /home/mingo/tip/include/linux/sem.h:81,
from /home/mingo/tip/include/linux/sched.h:69,
from /home/mingo/tip/arch/alpha/kernel/asm-offsets.c:9:
/home/mingo/tip/include/linux/rcupdate.h:62:2: error: #error "Unknown RCU implementation specified to kernel configuration"
Move these options back to init/Kconfig, which every architecture
includes.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/Kconfig.preempt')
-rw-r--r-- | kernel/Kconfig.preempt | 75 |
1 files changed, 0 insertions, 75 deletions
diff --git a/kernel/Kconfig.preempt b/kernel/Kconfig.preempt index 463f29743ea0..bf987b95b356 100644 --- a/kernel/Kconfig.preempt +++ b/kernel/Kconfig.preempt | |||
@@ -52,78 +52,3 @@ config PREEMPT | |||
52 | 52 | ||
53 | endchoice | 53 | endchoice |
54 | 54 | ||
55 | choice | ||
56 | prompt "RCU Implementation" | ||
57 | default CLASSIC_RCU | ||
58 | |||
59 | config CLASSIC_RCU | ||
60 | bool "Classic RCU" | ||
61 | help | ||
62 | This option selects the classic RCU implementation that is | ||
63 | designed for best read-side performance on non-realtime | ||
64 | systems. | ||
65 | |||
66 | Select this option if you are unsure. | ||
67 | |||
68 | config TREE_RCU | ||
69 | bool "Tree-based hierarchical RCU" | ||
70 | help | ||
71 | This option selects the RCU implementation that is | ||
72 | designed for very large SMP system with hundreds or | ||
73 | thousands of CPUs. | ||
74 | |||
75 | config PREEMPT_RCU | ||
76 | bool "Preemptible RCU" | ||
77 | depends on PREEMPT | ||
78 | help | ||
79 | This option reduces the latency of the kernel by making certain | ||
80 | RCU sections preemptible. Normally RCU code is non-preemptible, if | ||
81 | this option is selected then read-only RCU sections become | ||
82 | preemptible. This helps latency, but may expose bugs due to | ||
83 | now-naive assumptions about each RCU read-side critical section | ||
84 | remaining on a given CPU through its execution. | ||
85 | |||
86 | endchoice | ||
87 | |||
88 | config RCU_TRACE | ||
89 | bool "Enable tracing for RCU" | ||
90 | depends on TREE_RCU || PREEMPT_RCU | ||
91 | help | ||
92 | This option provides tracing in RCU which presents stats | ||
93 | in debugfs for debugging RCU implementation. | ||
94 | |||
95 | Say Y here if you want to enable RCU tracing | ||
96 | Say N if you are unsure. | ||
97 | |||
98 | config RCU_FANOUT | ||
99 | int "Tree-based hierarchical RCU fanout value" | ||
100 | range 2 64 if 64BIT | ||
101 | range 2 32 if !64BIT | ||
102 | depends on TREE_RCU | ||
103 | default 64 if 64BIT | ||
104 | default 32 if !64BIT | ||
105 | help | ||
106 | This option controls the fanout of hierarchical implementations | ||
107 | of RCU, allowing RCU to work efficiently on machines with | ||
108 | large numbers of CPUs. This value must be at least the cube | ||
109 | root of NR_CPUS, which allows NR_CPUS up to 32,768 for 32-bit | ||
110 | systems and up to 262,144 for 64-bit systems. | ||
111 | |||
112 | Select a specific number if testing RCU itself. | ||
113 | Take the default if unsure. | ||
114 | |||
115 | config RCU_FANOUT_EXACT | ||
116 | bool "Disable tree-based hierarchical RCU auto-balancing" | ||
117 | depends on TREE_RCU | ||
118 | default n | ||
119 | help | ||
120 | This option forces use of the exact RCU_FANOUT value specified, | ||
121 | regardless of imbalances in the hierarchy. This is useful for | ||
122 | testing RCU itself, and might one day be useful on systems with | ||
123 | strong NUMA behavior. | ||
124 | |||
125 | Without RCU_FANOUT_EXACT, the code will balance the hierarchy. | ||
126 | |||
127 | Say n if unsure. | ||
128 | |||
129 | |||