Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | # |
| 2 | # For a description of the syntax of this configuration file, |
| 3 | # see Documentation/kbuild/kconfig-language.txt. |
| 4 | # |
| 5 | |
Heiko Carstens | dbd70fb | 2008-04-17 07:46:12 +0200 | [diff] [blame] | 6 | config SCHED_MC |
| 7 | def_bool y |
| 8 | depends on SMP |
| 9 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 10 | config MMU |
Martin Schwidefsky | 61d48c2 | 2007-05-10 15:46:00 +0200 | [diff] [blame] | 11 | def_bool y |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 12 | |
Christoph Lameter | 66701b1 | 2007-02-10 01:43:09 -0800 | [diff] [blame] | 13 | config ZONE_DMA |
Heiko Carstens | 118bcd3 | 2007-02-21 10:55:12 +0100 | [diff] [blame] | 14 | def_bool y |
| 15 | depends on 64BIT |
Christoph Lameter | 66701b1 | 2007-02-10 01:43:09 -0800 | [diff] [blame] | 16 | |
Ingo Molnar | 2b105ff | 2006-07-03 00:25:02 -0700 | [diff] [blame] | 17 | config LOCKDEP_SUPPORT |
Martin Schwidefsky | 61d48c2 | 2007-05-10 15:46:00 +0200 | [diff] [blame] | 18 | def_bool y |
Ingo Molnar | 2b105ff | 2006-07-03 00:25:02 -0700 | [diff] [blame] | 19 | |
Heiko Carstens | 5bdc9b4 | 2006-07-03 00:24:41 -0700 | [diff] [blame] | 20 | config STACKTRACE_SUPPORT |
Martin Schwidefsky | 61d48c2 | 2007-05-10 15:46:00 +0200 | [diff] [blame] | 21 | def_bool y |
Heiko Carstens | 5bdc9b4 | 2006-07-03 00:24:41 -0700 | [diff] [blame] | 22 | |
Heiko Carstens | a3afe70 | 2008-02-05 16:50:45 +0100 | [diff] [blame] | 23 | config HAVE_LATENCYTOP_SUPPORT |
| 24 | def_bool y |
| 25 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 26 | config RWSEM_GENERIC_SPINLOCK |
| 27 | bool |
| 28 | |
| 29 | config RWSEM_XCHGADD_ALGORITHM |
Martin Schwidefsky | 61d48c2 | 2007-05-10 15:46:00 +0200 | [diff] [blame] | 30 | def_bool y |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 31 | |
David Howells | f0d1b0b | 2006-12-08 02:37:49 -0800 | [diff] [blame] | 32 | config ARCH_HAS_ILOG2_U32 |
| 33 | bool |
| 34 | default n |
| 35 | |
| 36 | config ARCH_HAS_ILOG2_U64 |
| 37 | bool |
| 38 | default n |
| 39 | |
Akinobu Mita | 7e33db4 | 2006-03-26 01:39:34 -0800 | [diff] [blame] | 40 | config GENERIC_HWEIGHT |
Martin Schwidefsky | 61d48c2 | 2007-05-10 15:46:00 +0200 | [diff] [blame] | 41 | def_bool y |
Akinobu Mita | 7e33db4 | 2006-03-26 01:39:34 -0800 | [diff] [blame] | 42 | |
Martin Schwidefsky | b020632 | 2008-12-25 13:38:36 +0100 | [diff] [blame] | 43 | config GENERIC_TIME_VSYSCALL |
| 44 | def_bool y |
| 45 | |
Heiko Carstens | 5a62b19 | 2008-04-17 07:46:25 +0200 | [diff] [blame] | 46 | config GENERIC_CLOCKEVENTS |
| 47 | def_bool y |
| 48 | |
Heiko Carstens | c0007f1 | 2007-04-27 16:01:42 +0200 | [diff] [blame] | 49 | config GENERIC_BUG |
| 50 | bool |
| 51 | depends on BUG |
| 52 | default y |
| 53 | |
Heiko Carstens | 52499f4 | 2010-02-26 22:37:44 +0100 | [diff] [blame] | 54 | config GENERIC_BUG_RELATIVE_POINTERS |
| 55 | def_bool y |
| 56 | |
Al Viro | 23db764 | 2007-02-11 18:15:29 +0000 | [diff] [blame] | 57 | config NO_IOMEM |
Al Viro | 5ea8176 | 2007-02-11 15:41:31 +0000 | [diff] [blame] | 58 | def_bool y |
| 59 | |
Heiko Carstens | 411f0f3 | 2007-05-06 14:49:09 -0700 | [diff] [blame] | 60 | config NO_DMA |
| 61 | def_bool y |
| 62 | |
Martin Schwidefsky | b6b40c5 | 2008-02-05 16:50:42 +0100 | [diff] [blame] | 63 | config GENERIC_LOCKBREAK |
| 64 | bool |
| 65 | default y |
| 66 | depends on SMP && PREEMPT |
| 67 | |
Carsten Otte | 402b086 | 2008-03-25 18:47:10 +0100 | [diff] [blame] | 68 | config PGSTE |
| 69 | bool |
| 70 | default y if KVM |
| 71 | |
Martin Schwidefsky | c185b78 | 2008-12-25 13:39:25 +0100 | [diff] [blame] | 72 | config VIRT_CPU_ACCOUNTING |
| 73 | def_bool y |
| 74 | |
Akinobu Mita | 6a11f75 | 2009-03-31 15:23:17 -0700 | [diff] [blame] | 75 | config ARCH_SUPPORTS_DEBUG_PAGEALLOC |
| 76 | def_bool y |
| 77 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 78 | mainmenu "Linux Kernel Configuration" |
| 79 | |
Martin Schwidefsky | 347a8dc | 2006-01-06 00:19:28 -0800 | [diff] [blame] | 80 | config S390 |
Martin Schwidefsky | 61d48c2 | 2007-05-10 15:46:00 +0200 | [diff] [blame] | 81 | def_bool y |
Heiko Carstens | ca9fc75 | 2008-12-25 13:38:39 +0100 | [diff] [blame] | 82 | select USE_GENERIC_SMP_HELPERS if SMP |
Heiko Carstens | ed6bb61 | 2009-01-14 14:14:01 +0100 | [diff] [blame] | 83 | select HAVE_SYSCALL_WRAPPERS |
Heiko Carstens | 5d360a7 | 2008-12-25 13:38:56 +0100 | [diff] [blame] | 84 | select HAVE_FUNCTION_TRACER |
Heiko Carstens | 8b4488f | 2009-06-12 10:26:45 +0200 | [diff] [blame] | 85 | select HAVE_FUNCTION_TRACE_MCOUNT_TEST |
Heiko Carstens | dfd9f7a | 2009-06-12 10:26:44 +0200 | [diff] [blame] | 86 | select HAVE_FTRACE_MCOUNT_RECORD |
Josh Stone | 6670000 | 2009-08-24 14:43:11 -0700 | [diff] [blame] | 87 | select HAVE_SYSCALL_TRACEPOINTS |
Heiko Carstens | dfd9f7a | 2009-06-12 10:26:44 +0200 | [diff] [blame] | 88 | select HAVE_DYNAMIC_FTRACE |
Heiko Carstens | 88dbd20 | 2009-06-12 10:26:46 +0200 | [diff] [blame] | 89 | select HAVE_FUNCTION_GRAPH_TRACER |
Heiko Carstens | 952974ac6 | 2010-02-12 13:38:40 +0100 | [diff] [blame] | 90 | select HAVE_REGS_AND_STACK_ACCESS_API |
Heiko Carstens | 36cd3c9 | 2009-04-09 18:48:34 +0200 | [diff] [blame] | 91 | select HAVE_DEFAULT_NO_SPIN_MUTEXES |
Mathieu Desnoyers | 42d4b83 | 2008-02-02 15:10:34 -0500 | [diff] [blame] | 92 | select HAVE_OPROFILE |
Mathieu Desnoyers | 3f55009 | 2008-02-02 15:10:35 -0500 | [diff] [blame] | 93 | select HAVE_KPROBES |
Ananth N Mavinakayanahalli | 9edddaa | 2008-03-04 14:28:37 -0800 | [diff] [blame] | 94 | select HAVE_KRETPROBES |
Christian Borntraeger | 77b455f | 2008-03-25 18:47:36 +0100 | [diff] [blame] | 95 | select HAVE_KVM if 64BIT |
Martin Schwidefsky | 753c4dd | 2008-10-10 21:33:20 +0200 | [diff] [blame] | 96 | select HAVE_ARCH_TRACEHOOK |
Rusty Russell | 98a79d6 | 2008-12-13 21:19:41 +1030 | [diff] [blame] | 97 | select INIT_ALL_POSSIBLE |
Peter Zijlstra | e360adb | 2010-10-14 14:01:34 +0800 | [diff] [blame] | 98 | select HAVE_IRQ_WORK |
Ingo Molnar | cdd6c48 | 2009-09-21 12:02:48 +0200 | [diff] [blame] | 99 | select HAVE_PERF_EVENTS |
Martin Schwidefsky | 1844c9b | 2010-02-26 22:37:53 +0100 | [diff] [blame] | 100 | select HAVE_KERNEL_GZIP |
| 101 | select HAVE_KERNEL_BZIP2 |
| 102 | select HAVE_KERNEL_LZMA |
Heiko Carstens | cdf5664 | 2010-05-26 23:27:12 +0200 | [diff] [blame] | 103 | select HAVE_KERNEL_LZO |
Martin Schwidefsky | 8021714 | 2010-10-25 16:10:11 +0200 | [diff] [blame] | 104 | select HAVE_GET_USER_PAGES_FAST |
Thomas Gleixner | 6beb000 | 2009-11-09 15:21:34 +0000 | [diff] [blame] | 105 | select ARCH_INLINE_SPIN_TRYLOCK |
| 106 | select ARCH_INLINE_SPIN_TRYLOCK_BH |
| 107 | select ARCH_INLINE_SPIN_LOCK |
| 108 | select ARCH_INLINE_SPIN_LOCK_BH |
| 109 | select ARCH_INLINE_SPIN_LOCK_IRQ |
| 110 | select ARCH_INLINE_SPIN_LOCK_IRQSAVE |
| 111 | select ARCH_INLINE_SPIN_UNLOCK |
| 112 | select ARCH_INLINE_SPIN_UNLOCK_BH |
| 113 | select ARCH_INLINE_SPIN_UNLOCK_IRQ |
| 114 | select ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE |
| 115 | select ARCH_INLINE_READ_TRYLOCK |
| 116 | select ARCH_INLINE_READ_LOCK |
| 117 | select ARCH_INLINE_READ_LOCK_BH |
| 118 | select ARCH_INLINE_READ_LOCK_IRQ |
| 119 | select ARCH_INLINE_READ_LOCK_IRQSAVE |
| 120 | select ARCH_INLINE_READ_UNLOCK |
| 121 | select ARCH_INLINE_READ_UNLOCK_BH |
| 122 | select ARCH_INLINE_READ_UNLOCK_IRQ |
| 123 | select ARCH_INLINE_READ_UNLOCK_IRQRESTORE |
| 124 | select ARCH_INLINE_WRITE_TRYLOCK |
| 125 | select ARCH_INLINE_WRITE_LOCK |
| 126 | select ARCH_INLINE_WRITE_LOCK_BH |
| 127 | select ARCH_INLINE_WRITE_LOCK_IRQ |
| 128 | select ARCH_INLINE_WRITE_LOCK_IRQSAVE |
| 129 | select ARCH_INLINE_WRITE_UNLOCK |
| 130 | select ARCH_INLINE_WRITE_UNLOCK_BH |
| 131 | select ARCH_INLINE_WRITE_UNLOCK_IRQ |
| 132 | select ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 133 | |
Martin Schwidefsky | fca3e35 | 2009-07-07 16:37:10 +0200 | [diff] [blame] | 134 | config SCHED_OMIT_FRAME_POINTER |
| 135 | bool |
| 136 | default y |
| 137 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 138 | source "init/Kconfig" |
| 139 | |
Matt Helsley | dc52ddc | 2008-10-18 20:27:21 -0700 | [diff] [blame] | 140 | source "kernel/Kconfig.freezer" |
| 141 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 142 | menu "Base setup" |
| 143 | |
| 144 | comment "Processor type and features" |
| 145 | |
Heiko Carstens | 5a62b19 | 2008-04-17 07:46:25 +0200 | [diff] [blame] | 146 | source "kernel/time/Kconfig" |
| 147 | |
Martin Schwidefsky | 347a8dc | 2006-01-06 00:19:28 -0800 | [diff] [blame] | 148 | config 64BIT |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 149 | bool "64 bit kernel" |
| 150 | help |
| 151 | Select this option if you have a 64 bit IBM zSeries machine |
| 152 | and want to use the 64 bit addressing mode. |
| 153 | |
Martin Schwidefsky | d9f7a74 | 2006-09-28 16:55:39 +0200 | [diff] [blame] | 154 | config 32BIT |
| 155 | bool |
| 156 | default y if !64BIT |
| 157 | |
Martin Schwidefsky | 0760630 | 2009-07-07 16:37:13 +0200 | [diff] [blame] | 158 | config KTIME_SCALAR |
| 159 | def_bool 32BIT |
| 160 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 161 | config SMP |
| 162 | bool "Symmetric multi-processing support" |
| 163 | ---help--- |
| 164 | This enables support for systems with more than one CPU. If you have |
| 165 | a system with only one CPU, like most personal computers, say N. If |
| 166 | you have a system with more than one CPU, say Y. |
| 167 | |
| 168 | If you say N here, the kernel will run on single and multiprocessor |
| 169 | machines, but will use only one CPU of a multiprocessor machine. If |
| 170 | you say Y here, the kernel will run on many, but not all, |
| 171 | singleprocessor machines. On a singleprocessor machine, the kernel |
| 172 | will run faster if you say N here. |
| 173 | |
Adrian Bunk | 03502fa | 2008-02-03 15:50:21 +0200 | [diff] [blame] | 174 | See also the SMP-HOWTO available at |
| 175 | <http://www.tldp.org/docs.html#howto>. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 176 | |
| 177 | Even if you don't know what to do here, say Y. |
| 178 | |
| 179 | config NR_CPUS |
| 180 | int "Maximum number of CPUs (2-64)" |
| 181 | range 2 64 |
| 182 | depends on SMP |
Heiko Carstens | 057c5cb | 2008-02-19 15:29:25 +0100 | [diff] [blame] | 183 | default "32" if !64BIT |
| 184 | default "64" if 64BIT |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 185 | help |
| 186 | This allows you to specify the maximum number of CPUs which this |
| 187 | kernel will support. The maximum supported value is 64 and the |
| 188 | minimum value which makes sense is 2. |
| 189 | |
| 190 | This is purely to save memory - each supported CPU adds |
| 191 | approximately sixteen kilobytes to the kernel image. |
| 192 | |
| 193 | config HOTPLUG_CPU |
| 194 | bool "Support for hot-pluggable CPUs" |
| 195 | depends on SMP |
| 196 | select HOTPLUG |
| 197 | default n |
| 198 | help |
| 199 | Say Y here to be able to turn CPUs off and on. CPUs |
| 200 | can be controlled through /sys/devices/system/cpu/cpu#. |
| 201 | Say N if you want to disable CPU hotplug. |
| 202 | |
Heiko Carstens | 4cb14bc | 2010-08-31 10:28:18 +0200 | [diff] [blame] | 203 | config SCHED_BOOK |
| 204 | bool "Book scheduler support" |
| 205 | depends on SMP |
| 206 | help |
| 207 | Book scheduler support improves the CPU scheduler's decision making |
| 208 | when dealing with machines that have several books. |
| 209 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 210 | config MATHEMU |
| 211 | bool "IEEE FPU emulation" |
| 212 | depends on MARCH_G5 |
| 213 | help |
| 214 | This option is required for IEEE compliant floating point arithmetic |
| 215 | on older S/390 machines. Say Y unless you know your machine doesn't |
| 216 | need this. |
| 217 | |
Martin Schwidefsky | 347a8dc | 2006-01-06 00:19:28 -0800 | [diff] [blame] | 218 | config COMPAT |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 219 | bool "Kernel support for 31 bit emulation" |
Martin Schwidefsky | 347a8dc | 2006-01-06 00:19:28 -0800 | [diff] [blame] | 220 | depends on 64BIT |
Martin Schwidefsky | 63506c4 | 2008-07-14 09:58:54 +0200 | [diff] [blame] | 221 | select COMPAT_BINFMT_ELF |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 222 | help |
| 223 | Select this option if you want to enable your system kernel to |
| 224 | handle system-calls from ELF binaries for 31 bit ESA. This option |
| 225 | (and some other stuff like libraries and such) is needed for |
| 226 | executing 31 bit applications. It is safe to say "Y". |
| 227 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 228 | config SYSVIPC_COMPAT |
| 229 | bool |
| 230 | depends on COMPAT && SYSVIPC |
| 231 | default y |
| 232 | |
Al Viro | e65e1fc | 2006-09-12 03:04:40 -0400 | [diff] [blame] | 233 | config AUDIT_ARCH |
| 234 | bool |
| 235 | default y |
| 236 | |
Gerald Schaefer | c1821c2 | 2007-02-05 21:18:17 +0100 | [diff] [blame] | 237 | config S390_EXEC_PROTECT |
| 238 | bool "Data execute protection" |
Gerald Schaefer | c1821c2 | 2007-02-05 21:18:17 +0100 | [diff] [blame] | 239 | help |
| 240 | This option allows to enable a buffer overflow protection for user |
| 241 | space programs and it also selects the addressing mode option above. |
| 242 | The kernel parameter noexec=on will enable this feature and also |
| 243 | switch the addressing modes, default is disabled. Enabling this (via |
| 244 | kernel parameter) on machines earlier than IBM System z9-109 EC/BC |
| 245 | will reduce system performance. |
| 246 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 247 | comment "Code generation options" |
| 248 | |
| 249 | choice |
| 250 | prompt "Processor type" |
| 251 | default MARCH_G5 |
| 252 | |
| 253 | config MARCH_G5 |
| 254 | bool "S/390 model G5 and G6" |
Martin Schwidefsky | 347a8dc | 2006-01-06 00:19:28 -0800 | [diff] [blame] | 255 | depends on !64BIT |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 256 | help |
| 257 | Select this to build a 31 bit kernel that works |
| 258 | on all S/390 and zSeries machines. |
| 259 | |
| 260 | config MARCH_Z900 |
| 261 | bool "IBM eServer zSeries model z800 and z900" |
| 262 | help |
| 263 | Select this to optimize for zSeries machines. This |
| 264 | will enable some optimizations that are not available |
| 265 | on older 31 bit only CPUs. |
| 266 | |
| 267 | config MARCH_Z990 |
| 268 | bool "IBM eServer zSeries model z890 and z990" |
| 269 | help |
| 270 | Select this enable optimizations for model z890/z990. |
| 271 | This will be slightly faster but does not work on |
| 272 | older machines such as the z900. |
| 273 | |
Christian Borntraeger | 0efa470 | 2006-09-28 16:55:46 +0200 | [diff] [blame] | 274 | config MARCH_Z9_109 |
| 275 | bool "IBM System z9" |
| 276 | help |
| 277 | Select this to enable optimizations for IBM System z9-109, IBM |
| 278 | System z9 Enterprise Class (z9 EC), and IBM System z9 Business |
| 279 | Class (z9 BC). The kernel will be slightly faster but will not |
| 280 | work on older machines such as the z990, z890, z900, and z800. |
| 281 | |
Martin Schwidefsky | e37f50e | 2008-12-25 13:39:19 +0100 | [diff] [blame] | 282 | config MARCH_Z10 |
| 283 | bool "IBM System z10" |
| 284 | help |
| 285 | Select this to enable optimizations for IBM System z10. The |
| 286 | kernel will be slightly faster but will not work on older |
| 287 | machines such as the z990, z890, z900, z800, z9-109, z9-ec |
| 288 | and z9-bc. |
| 289 | |
Heiko Carstens | f861e40 | 2010-10-25 16:10:17 +0200 | [diff] [blame^] | 290 | config MARCH_Z196 |
| 291 | bool "IBM zEnterprise 196" |
| 292 | help |
| 293 | Select this to enable optimizations for IBM zEnterprise 196. |
| 294 | The kernel will be slightly faster but will not work on older |
| 295 | machines such as the z990, z890, z900, z800, z9-109, z9-ec, |
| 296 | z9-bc, z10-ec and z10-bc. |
| 297 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 298 | endchoice |
| 299 | |
| 300 | config PACK_STACK |
| 301 | bool "Pack kernel stack" |
| 302 | help |
| 303 | This option enables the compiler option -mkernel-backchain if it |
| 304 | is available. If the option is available the compiler supports |
| 305 | the new stack layout which dramatically reduces the minimum stack |
| 306 | frame size. With an old compiler a non-leaf function needs a |
| 307 | minimum of 96 bytes on 31 bit and 160 bytes on 64 bit. With |
| 308 | -mkernel-backchain the minimum size drops to 16 byte on 31 bit |
| 309 | and 24 byte on 64 bit. |
| 310 | |
| 311 | Say Y if you are unsure. |
| 312 | |
| 313 | config SMALL_STACK |
Heiko Carstens | 7f5a8ba | 2008-10-28 11:10:21 +0100 | [diff] [blame] | 314 | bool "Use 8kb for kernel stack instead of 16kb" |
| 315 | depends on PACK_STACK && 64BIT && !LOCKDEP |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 316 | help |
| 317 | If you say Y here and the compiler supports the -mkernel-backchain |
Heiko Carstens | 7f5a8ba | 2008-10-28 11:10:21 +0100 | [diff] [blame] | 318 | option the kernel will use a smaller kernel stack size. The reduced |
| 319 | size is 8kb instead of 16kb. This allows to run more threads on a |
| 320 | system and reduces the pressure on the memory management for higher |
| 321 | order page allocations. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 322 | |
| 323 | Say N if you are unsure. |
| 324 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 325 | config CHECK_STACK |
| 326 | bool "Detect kernel stack overflow" |
| 327 | help |
| 328 | This option enables the compiler option -mstack-guard and |
| 329 | -mstack-size if they are available. If the compiler supports them |
| 330 | it will emit additional code to each function prolog to trigger |
| 331 | an illegal operation if the kernel stack is about to overflow. |
| 332 | |
| 333 | Say N if you are unsure. |
| 334 | |
| 335 | config STACK_GUARD |
| 336 | int "Size of the guard area (128-1024)" |
| 337 | range 128 1024 |
| 338 | depends on CHECK_STACK |
| 339 | default "256" |
| 340 | help |
| 341 | This allows you to specify the size of the guard area at the lower |
| 342 | end of the kernel stack. If the kernel stack points into the guard |
| 343 | area on function entry an illegal operation is triggered. The size |
| 344 | needs to be a power of 2. Please keep in mind that the size of an |
| 345 | interrupt frame is 184 bytes for 31 bit and 328 bytes on 64 bit. |
| 346 | The minimum size for the stack guard should be 256 for 31 bit and |
| 347 | 512 for 64 bit. |
| 348 | |
| 349 | config WARN_STACK |
| 350 | bool "Emit compiler warnings for function with broken stack usage" |
| 351 | help |
| 352 | This option enables the compiler options -mwarn-framesize and |
| 353 | -mwarn-dynamicstack. If the compiler supports these options it |
| 354 | will generate warnings for function which either use alloca or |
Frederik Schwarzer | 025dfda | 2008-10-16 19:02:37 +0200 | [diff] [blame] | 355 | create a stack frame bigger than CONFIG_WARN_STACK_SIZE. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 356 | |
| 357 | Say N if you are unsure. |
| 358 | |
| 359 | config WARN_STACK_SIZE |
| 360 | int "Maximum frame size considered safe (128-2048)" |
| 361 | range 128 2048 |
| 362 | depends on WARN_STACK |
Heiko Carstens | c5a3725 | 2008-07-17 17:16:44 +0200 | [diff] [blame] | 363 | default "2048" |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 364 | help |
| 365 | This allows you to specify the maximum frame size a function may |
| 366 | have without the compiler complaining about it. |
| 367 | |
Heiko Carstens | 39b742f | 2006-12-08 15:56:10 +0100 | [diff] [blame] | 368 | config ARCH_POPULATES_NODE_MAP |
| 369 | def_bool y |
| 370 | |
Martin Schwidefsky | 61d48c2 | 2007-05-10 15:46:00 +0200 | [diff] [blame] | 371 | comment "Kernel preemption" |
| 372 | |
| 373 | source "kernel/Kconfig.preempt" |
| 374 | |
Heiko Carstens | 17f3458 | 2008-04-30 13:38:47 +0200 | [diff] [blame] | 375 | config ARCH_SPARSEMEM_ENABLE |
| 376 | def_bool y |
| 377 | select SPARSEMEM_VMEMMAP_ENABLE |
| 378 | select SPARSEMEM_VMEMMAP |
Heiko Carstens | 148f167 | 2008-06-10 10:03:18 +0200 | [diff] [blame] | 379 | select SPARSEMEM_STATIC if !64BIT |
Heiko Carstens | 17f3458 | 2008-04-30 13:38:47 +0200 | [diff] [blame] | 380 | |
| 381 | config ARCH_SPARSEMEM_DEFAULT |
| 382 | def_bool y |
| 383 | |
Hans-Joachim Picht | 97195d6 | 2008-05-30 10:03:24 +0200 | [diff] [blame] | 384 | config ARCH_SELECT_MEMORY_MODEL |
| 385 | def_bool y |
| 386 | |
Heiko Carstens | 421c175 | 2008-07-14 09:59:18 +0200 | [diff] [blame] | 387 | config ARCH_ENABLE_MEMORY_HOTPLUG |
| 388 | def_bool y |
| 389 | depends on SPARSEMEM |
| 390 | |
Gerald Schaefer | 7e9238f | 2008-08-01 16:39:16 +0200 | [diff] [blame] | 391 | config ARCH_ENABLE_MEMORY_HOTREMOVE |
| 392 | def_bool y |
| 393 | |
Hans-Joachim Picht | 155af2f | 2009-06-16 10:30:52 +0200 | [diff] [blame] | 394 | config ARCH_HIBERNATION_POSSIBLE |
| 395 | def_bool y if 64BIT |
| 396 | |
Dave Hansen | 3f22ab2 | 2005-06-23 00:07:43 -0700 | [diff] [blame] | 397 | source "mm/Kconfig" |
| 398 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 399 | comment "I/O subsystem configuration" |
| 400 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 401 | config QDIO |
| 402 | tristate "QDIO support" |
| 403 | ---help--- |
Frank Pavlic | 8129ee1 | 2006-01-06 00:19:20 -0800 | [diff] [blame] | 404 | This driver provides the Queued Direct I/O base support for |
Ursula Braun | efca13b | 2008-04-17 07:46:19 +0200 | [diff] [blame] | 405 | IBM System z. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 406 | |
| 407 | To compile this driver as a module, choose M here: the |
| 408 | module will be called qdio. |
| 409 | |
| 410 | If unsure, say Y. |
| 411 | |
Cornelia Huck | 9d92a7e | 2008-07-14 09:59:05 +0200 | [diff] [blame] | 412 | config CHSC_SCH |
| 413 | tristate "Support for CHSC subchannels" |
| 414 | help |
| 415 | This driver allows usage of CHSC subchannels. A CHSC subchannel |
| 416 | is usually present on LPAR only. |
| 417 | The driver creates a device /dev/chsc, which may be used to |
| 418 | obtain I/O configuration information about the machine and |
| 419 | to issue asynchronous chsc commands (DANGEROUS). |
| 420 | You will usually only want to use this interface on a special |
| 421 | LPAR designated for system management. |
| 422 | |
| 423 | To compile this driver as a module, choose M here: the |
| 424 | module will be called chsc_sch. |
| 425 | |
| 426 | If unsure, say N. |
| 427 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 428 | comment "Misc" |
| 429 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 430 | config IPL |
| 431 | bool "Builtin IPL record support" |
| 432 | help |
| 433 | If you want to use the produced kernel to IPL directly from a |
| 434 | device, you have to merge a bootsector specific to the device |
| 435 | into the first bytes of the kernel. You will have to select the |
| 436 | IPL device. |
| 437 | |
| 438 | choice |
| 439 | prompt "IPL method generated into head.S" |
| 440 | depends on IPL |
Heiko Carstens | 46e7951 | 2008-10-28 11:10:20 +0100 | [diff] [blame] | 441 | default IPL_VM |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 442 | help |
| 443 | Select "tape" if you want to IPL the image from a Tape. |
| 444 | |
| 445 | Select "vm_reader" if you are running under VM/ESA and want |
| 446 | to IPL the image from the emulated card reader. |
| 447 | |
| 448 | config IPL_TAPE |
| 449 | bool "tape" |
| 450 | |
| 451 | config IPL_VM |
| 452 | bool "vm_reader" |
| 453 | |
| 454 | endchoice |
| 455 | |
| 456 | source "fs/Kconfig.binfmt" |
| 457 | |
Heiko Carstens | 684de39 | 2008-03-05 12:37:14 +0100 | [diff] [blame] | 458 | config FORCE_MAX_ZONEORDER |
| 459 | int |
| 460 | default "9" |
| 461 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 462 | config PFAULT |
| 463 | bool "Pseudo page fault support" |
| 464 | help |
| 465 | Select this option, if you want to use PFAULT pseudo page fault |
| 466 | handling under VM. If running native or in LPAR, this option |
| 467 | has no effect. If your VM does not support PFAULT, PAGEEX |
| 468 | pseudo page fault handling will be used. |
| 469 | Note that VM 4.2 supports PFAULT but has a bug in its |
| 470 | implementation that causes some problems. |
| 471 | Everybody who wants to run Linux under VM != VM4.2 should select |
| 472 | this option. |
| 473 | |
| 474 | config SHARED_KERNEL |
| 475 | bool "VM shared kernel support" |
| 476 | help |
| 477 | Select this option, if you want to share the text segment of the |
| 478 | Linux kernel between different VM guests. This reduces memory |
| 479 | usage with lots of guests but greatly increases kernel size. |
Heiko Carstens | 9c9c176 | 2007-03-05 23:35:45 +0100 | [diff] [blame] | 480 | Also if a kernel was IPL'ed from a shared segment the kexec system |
| 481 | call will not work. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 482 | You should only select this option if you know what you are |
| 483 | doing and want to exploit this feature. |
| 484 | |
| 485 | config CMM |
| 486 | tristate "Cooperative memory management" |
| 487 | help |
| 488 | Select this option, if you want to enable the kernel interface |
| 489 | to reduce the memory size of the system. This is accomplished |
| 490 | by allocating pages of memory and put them "on hold". This only |
| 491 | makes sense for a system running under VM where the unused pages |
| 492 | will be reused by VM for other guest systems. The interface |
| 493 | allows an external monitor to balance memory of many systems. |
| 494 | Everybody who wants to run Linux under VM should select this |
| 495 | option. |
| 496 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 497 | config CMM_IUCV |
| 498 | bool "IUCV special message interface to cooperative memory management" |
| 499 | depends on CMM && (SMSGIUCV=y || CMM=SMSGIUCV) |
| 500 | help |
| 501 | Select this option to enable the special message interface to |
| 502 | the cooperative memory management. |
| 503 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 504 | config APPLDATA_BASE |
| 505 | bool "Linux - VM Monitor Stream, base infrastructure" |
Martin Schwidefsky | c185b78 | 2008-12-25 13:39:25 +0100 | [diff] [blame] | 506 | depends on PROC_FS |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 507 | help |
| 508 | This provides a kernel interface for creating and updating z/VM APPLDATA |
| 509 | monitor records. The monitor records are updated at certain time |
| 510 | intervals, once the timer is started. |
| 511 | Writing 1 or 0 to /proc/appldata/timer starts(1) or stops(0) the timer, |
| 512 | i.e. enables or disables monitoring on the Linux side. |
| 513 | A custom interval value (in seconds) can be written to |
| 514 | /proc/appldata/interval. |
| 515 | |
| 516 | Defaults are 60 seconds interval and timer off. |
| 517 | The /proc entries can also be read from, showing the current settings. |
| 518 | |
| 519 | config APPLDATA_MEM |
| 520 | tristate "Monitor memory management statistics" |
Al Viro | 62fb2ba | 2006-12-13 00:34:59 -0800 | [diff] [blame] | 521 | depends on APPLDATA_BASE && VM_EVENT_COUNTERS |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 522 | help |
| 523 | This provides memory management related data to the Linux - VM Monitor |
| 524 | Stream, like paging/swapping rate, memory utilisation, etc. |
| 525 | Writing 1 or 0 to /proc/appldata/memory creates(1) or removes(0) a z/VM |
| 526 | APPLDATA monitor record, i.e. enables or disables monitoring this record |
| 527 | on the z/VM side. |
| 528 | |
| 529 | Default is disabled. |
| 530 | The /proc entry can also be read from, showing the current settings. |
| 531 | |
| 532 | This can also be compiled as a module, which will be called |
| 533 | appldata_mem.o. |
| 534 | |
| 535 | config APPLDATA_OS |
| 536 | tristate "Monitor OS statistics" |
| 537 | depends on APPLDATA_BASE |
| 538 | help |
| 539 | This provides OS related data to the Linux - VM Monitor Stream, like |
| 540 | CPU utilisation, etc. |
| 541 | Writing 1 or 0 to /proc/appldata/os creates(1) or removes(0) a z/VM |
| 542 | APPLDATA monitor record, i.e. enables or disables monitoring this record |
| 543 | on the z/VM side. |
| 544 | |
| 545 | Default is disabled. |
| 546 | This can also be compiled as a module, which will be called |
| 547 | appldata_os.o. |
| 548 | |
| 549 | config APPLDATA_NET_SUM |
| 550 | tristate "Monitor overall network statistics" |
Sachin Sant | 70193af | 2009-03-26 15:24:00 +0100 | [diff] [blame] | 551 | depends on APPLDATA_BASE && NET |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 552 | help |
| 553 | This provides network related data to the Linux - VM Monitor Stream, |
| 554 | currently there is only a total sum of network I/O statistics, no |
| 555 | per-interface data. |
| 556 | Writing 1 or 0 to /proc/appldata/net_sum creates(1) or removes(0) a z/VM |
| 557 | APPLDATA monitor record, i.e. enables or disables monitoring this record |
| 558 | on the z/VM side. |
| 559 | |
| 560 | Default is disabled. |
| 561 | This can also be compiled as a module, which will be called |
| 562 | appldata_net_sum.o. |
| 563 | |
Martin Schwidefsky | 61d48c2 | 2007-05-10 15:46:00 +0200 | [diff] [blame] | 564 | source kernel/Kconfig.hz |
| 565 | |
Michael Holzheu | 24bbb1f | 2006-06-23 02:05:06 -0700 | [diff] [blame] | 566 | config S390_HYPFS_FS |
| 567 | bool "s390 hypervisor file system support" |
| 568 | select SYS_HYPERVISOR |
| 569 | default y |
| 570 | help |
| 571 | This is a virtual file system intended to provide accounting |
| 572 | information in an s390 hypervisor environment. |
| 573 | |
Heiko Carstens | cf13f0e | 2005-06-25 14:58:11 -0700 | [diff] [blame] | 574 | config KEXEC |
Heiko Carstens | 07d43ce | 2006-09-20 15:59:29 +0200 | [diff] [blame] | 575 | bool "kexec system call" |
Heiko Carstens | cf13f0e | 2005-06-25 14:58:11 -0700 | [diff] [blame] | 576 | help |
| 577 | kexec is a system call that implements the ability to shutdown your |
| 578 | current kernel, and to start another kernel. It is like a reboot |
| 579 | but is independent of hardware/microcode support. |
| 580 | |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 581 | config ZFCPDUMP |
Michael Holzheu | 59f2e69 | 2009-03-26 15:24:46 +0100 | [diff] [blame] | 582 | bool "zfcpdump support" |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 583 | select SMP |
| 584 | default n |
| 585 | help |
| 586 | Select this option if you want to build an zfcpdump enabled kernel. |
Dirk Hohndel | e403149 | 2007-10-30 13:37:19 -0700 | [diff] [blame] | 587 | Refer to <file:Documentation/s390/zfcpdump.txt> for more details on this. |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 588 | |
Carsten Otte | fa58774 | 2008-03-25 18:47:44 +0100 | [diff] [blame] | 589 | config S390_GUEST |
Christian Borntraeger | 20766c0 | 2008-08-29 13:30:56 +0200 | [diff] [blame] | 590 | bool "s390 guest support for KVM (EXPERIMENTAL)" |
Carsten Otte | fa58774 | 2008-03-25 18:47:44 +0100 | [diff] [blame] | 591 | depends on 64BIT && EXPERIMENTAL |
| 592 | select VIRTIO |
| 593 | select VIRTIO_RING |
Christian Borntraeger | faeba83 | 2008-06-20 15:24:18 +0200 | [diff] [blame] | 594 | select VIRTIO_CONSOLE |
Carsten Otte | fa58774 | 2008-03-25 18:47:44 +0100 | [diff] [blame] | 595 | help |
Christian Borntraeger | 20766c0 | 2008-08-29 13:30:56 +0200 | [diff] [blame] | 596 | Select this option if you want to run the kernel as a guest under |
| 597 | the KVM hypervisor. This will add detection for KVM as well as a |
| 598 | virtio transport. If KVM is detected, the virtio console will be |
| 599 | the default console. |
Heiko Carstens | bcf5cef | 2009-06-12 10:26:26 +0200 | [diff] [blame] | 600 | |
| 601 | config SECCOMP |
| 602 | bool "Enable seccomp to safely compute untrusted bytecode" |
| 603 | depends on PROC_FS |
| 604 | default y |
| 605 | help |
| 606 | This kernel feature is useful for number crunching applications |
| 607 | that may need to compute untrusted bytecode during their |
| 608 | execution. By using pipes or other transports made available to |
| 609 | the process as file descriptors supporting the read/write |
| 610 | syscalls, it's possible to isolate those applications in |
| 611 | their own address space using seccomp. Once seccomp is |
| 612 | enabled via /proc/<pid>/seccomp, it cannot be disabled |
| 613 | and the task is only allowed to execute a few safe syscalls |
| 614 | defined by each seccomp mode. |
| 615 | |
| 616 | If unsure, say Y. |
| 617 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 618 | endmenu |
| 619 | |
Hans-Joachim Picht | 155af2f | 2009-06-16 10:30:52 +0200 | [diff] [blame] | 620 | menu "Power Management" |
| 621 | |
| 622 | source "kernel/power/Kconfig" |
| 623 | |
| 624 | endmenu |
| 625 | |
Sam Ravnborg | d5950b4 | 2005-07-11 21:03:49 -0700 | [diff] [blame] | 626 | source "net/Kconfig" |
| 627 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 628 | config PCMCIA |
Martin Schwidefsky | 61d48c2 | 2007-05-10 15:46:00 +0200 | [diff] [blame] | 629 | def_bool n |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 630 | |
Martin Schwidefsky | 61d48c2 | 2007-05-10 15:46:00 +0200 | [diff] [blame] | 631 | config CCW |
| 632 | def_bool y |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 633 | |
Martin Schwidefsky | 61d48c2 | 2007-05-10 15:46:00 +0200 | [diff] [blame] | 634 | source "drivers/Kconfig" |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 635 | |
| 636 | source "fs/Kconfig" |
| 637 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 638 | source "arch/s390/Kconfig.debug" |
| 639 | |
| 640 | source "security/Kconfig" |
| 641 | |
| 642 | source "crypto/Kconfig" |
| 643 | |
| 644 | source "lib/Kconfig" |
Christian Borntraeger | 77b455f | 2008-03-25 18:47:36 +0100 | [diff] [blame] | 645 | |
| 646 | source "arch/s390/kvm/Kconfig" |