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