xref: /openbmc/linux/arch/s390/Kconfig (revision c0007f1a65762eaf55633d403b380130ec60adad)
11da177e4SLinus Torvalds#
21da177e4SLinus Torvalds# For a description of the syntax of this configuration file,
31da177e4SLinus Torvalds# see Documentation/kbuild/kconfig-language.txt.
41da177e4SLinus Torvalds#
51da177e4SLinus Torvalds
61da177e4SLinus Torvaldsconfig MMU
71da177e4SLinus Torvalds	bool
81da177e4SLinus Torvalds	default y
91da177e4SLinus Torvalds
1066701b14SChristoph Lameterconfig ZONE_DMA
11118bcd31SHeiko Carstens	def_bool y
12118bcd31SHeiko Carstens	depends on 64BIT
1366701b14SChristoph Lameter
142b105ff9SIngo Molnarconfig LOCKDEP_SUPPORT
152b105ff9SIngo Molnar	bool
162b105ff9SIngo Molnar	default y
172b105ff9SIngo Molnar
185bdc9b44SHeiko Carstensconfig STACKTRACE_SUPPORT
195bdc9b44SHeiko Carstens	bool
205bdc9b44SHeiko Carstens	default y
215bdc9b44SHeiko Carstens
221da177e4SLinus Torvaldsconfig RWSEM_GENERIC_SPINLOCK
231da177e4SLinus Torvalds	bool
241da177e4SLinus Torvalds
251da177e4SLinus Torvaldsconfig RWSEM_XCHGADD_ALGORITHM
261da177e4SLinus Torvalds	bool
271da177e4SLinus Torvalds	default y
281da177e4SLinus Torvalds
29f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U32
30f0d1b0b3SDavid Howells	bool
31f0d1b0b3SDavid Howells	default n
32f0d1b0b3SDavid Howells
33f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U64
34f0d1b0b3SDavid Howells	bool
35f0d1b0b3SDavid Howells	default n
36f0d1b0b3SDavid Howells
377e33db4eSAkinobu Mitaconfig GENERIC_HWEIGHT
387e33db4eSAkinobu Mita	bool
397e33db4eSAkinobu Mita	default y
407e33db4eSAkinobu Mita
41dc64bef5SMartin Schwidefskyconfig GENERIC_TIME
42dc64bef5SMartin Schwidefsky	def_bool y
43dc64bef5SMartin Schwidefsky
44*c0007f1aSHeiko Carstensconfig GENERIC_BUG
45*c0007f1aSHeiko Carstens	bool
46*c0007f1aSHeiko Carstens	depends on BUG
47*c0007f1aSHeiko Carstens	default y
48*c0007f1aSHeiko Carstens
4923db764dSAl Viroconfig NO_IOMEM
505ea81769SAl Viro	def_bool y
515ea81769SAl Viro
521da177e4SLinus Torvaldsmainmenu "Linux Kernel Configuration"
531da177e4SLinus Torvalds
54347a8dc3SMartin Schwidefskyconfig S390
551da177e4SLinus Torvalds	bool
561da177e4SLinus Torvalds	default y
571da177e4SLinus Torvalds
581da177e4SLinus Torvaldssource "init/Kconfig"
591da177e4SLinus Torvalds
601da177e4SLinus Torvaldsmenu "Base setup"
611da177e4SLinus Torvalds
621da177e4SLinus Torvaldscomment "Processor type and features"
631da177e4SLinus Torvalds
64347a8dc3SMartin Schwidefskyconfig 64BIT
651da177e4SLinus Torvalds	bool "64 bit kernel"
661da177e4SLinus Torvalds	help
671da177e4SLinus Torvalds	  Select this option if you have a 64 bit IBM zSeries machine
681da177e4SLinus Torvalds	  and want to use the 64 bit addressing mode.
691da177e4SLinus Torvalds
70d9f7a745SMartin Schwidefskyconfig 32BIT
71d9f7a745SMartin Schwidefsky	bool
72d9f7a745SMartin Schwidefsky	default y if !64BIT
73d9f7a745SMartin Schwidefsky
741da177e4SLinus Torvaldsconfig SMP
751da177e4SLinus Torvalds	bool "Symmetric multi-processing support"
761da177e4SLinus Torvalds	---help---
771da177e4SLinus Torvalds	  This enables support for systems with more than one CPU. If you have
781da177e4SLinus Torvalds	  a system with only one CPU, like most personal computers, say N. If
791da177e4SLinus Torvalds	  you have a system with more than one CPU, say Y.
801da177e4SLinus Torvalds
811da177e4SLinus Torvalds	  If you say N here, the kernel will run on single and multiprocessor
821da177e4SLinus Torvalds	  machines, but will use only one CPU of a multiprocessor machine. If
831da177e4SLinus Torvalds	  you say Y here, the kernel will run on many, but not all,
841da177e4SLinus Torvalds	  singleprocessor machines. On a singleprocessor machine, the kernel
851da177e4SLinus Torvalds	  will run faster if you say N here.
861da177e4SLinus Torvalds
871da177e4SLinus Torvalds	  See also the <file:Documentation/smp.txt> and the SMP-HOWTO
881da177e4SLinus Torvalds	  available at <http://www.tldp.org/docs.html#howto>.
891da177e4SLinus Torvalds
901da177e4SLinus Torvalds	  Even if you don't know what to do here, say Y.
911da177e4SLinus Torvalds
921da177e4SLinus Torvaldsconfig NR_CPUS
931da177e4SLinus Torvalds	int "Maximum number of CPUs (2-64)"
941da177e4SLinus Torvalds	range 2 64
951da177e4SLinus Torvalds	depends on SMP
961da177e4SLinus Torvalds	default "32"
971da177e4SLinus Torvalds	help
981da177e4SLinus Torvalds	  This allows you to specify the maximum number of CPUs which this
991da177e4SLinus Torvalds	  kernel will support.  The maximum supported value is 64 and the
1001da177e4SLinus Torvalds	  minimum value which makes sense is 2.
1011da177e4SLinus Torvalds
1021da177e4SLinus Torvalds	  This is purely to save memory - each supported CPU adds
1031da177e4SLinus Torvalds	  approximately sixteen kilobytes to the kernel image.
1041da177e4SLinus Torvalds
1051da177e4SLinus Torvaldsconfig HOTPLUG_CPU
1061da177e4SLinus Torvalds	bool "Support for hot-pluggable CPUs"
1071da177e4SLinus Torvalds	depends on SMP
1081da177e4SLinus Torvalds	select HOTPLUG
1091da177e4SLinus Torvalds	default n
1101da177e4SLinus Torvalds	help
1111da177e4SLinus Torvalds	  Say Y here to be able to turn CPUs off and on. CPUs
1121da177e4SLinus Torvalds	  can be controlled through /sys/devices/system/cpu/cpu#.
1131da177e4SLinus Torvalds	  Say N if you want to disable CPU hotplug.
1141da177e4SLinus Torvalds
1154bbf39c2SIngo Molnarconfig DEFAULT_MIGRATION_COST
1164bbf39c2SIngo Molnar	int
1174bbf39c2SIngo Molnar	default "1000000"
1184bbf39c2SIngo Molnar
1191da177e4SLinus Torvaldsconfig MATHEMU
1201da177e4SLinus Torvalds	bool "IEEE FPU emulation"
1211da177e4SLinus Torvalds	depends on MARCH_G5
1221da177e4SLinus Torvalds	help
1231da177e4SLinus Torvalds	  This option is required for IEEE compliant floating point arithmetic
1241da177e4SLinus Torvalds	  on older S/390 machines. Say Y unless you know your machine doesn't
1251da177e4SLinus Torvalds	  need this.
1261da177e4SLinus Torvalds
127347a8dc3SMartin Schwidefskyconfig COMPAT
1281da177e4SLinus Torvalds	bool "Kernel support for 31 bit emulation"
129347a8dc3SMartin Schwidefsky	depends on 64BIT
1301da177e4SLinus Torvalds	help
1311da177e4SLinus Torvalds	  Select this option if you want to enable your system kernel to
1321da177e4SLinus Torvalds	  handle system-calls from ELF binaries for 31 bit ESA.  This option
1331da177e4SLinus Torvalds	  (and some other stuff like libraries and such) is needed for
1341da177e4SLinus Torvalds	  executing 31 bit applications.  It is safe to say "Y".
1351da177e4SLinus Torvalds
1361da177e4SLinus Torvaldsconfig SYSVIPC_COMPAT
1371da177e4SLinus Torvalds	bool
1381da177e4SLinus Torvalds	depends on COMPAT && SYSVIPC
1391da177e4SLinus Torvalds	default y
1401da177e4SLinus Torvalds
141e65e1fc2SAl Viroconfig AUDIT_ARCH
142e65e1fc2SAl Viro	bool
143e65e1fc2SAl Viro	default y
144e65e1fc2SAl Viro
145c1821c2eSGerald Schaeferconfig S390_SWITCH_AMODE
146c1821c2eSGerald Schaefer	bool "Switch kernel/user addressing modes"
147c1821c2eSGerald Schaefer	help
148c1821c2eSGerald Schaefer	  This option allows to switch the addressing modes of kernel and user
149c1821c2eSGerald Schaefer	  space. The kernel parameter switch_amode=on will enable this feature,
150c1821c2eSGerald Schaefer	  default is disabled. Enabling this (via kernel parameter) on machines
151c1821c2eSGerald Schaefer	  earlier than IBM System z9-109 EC/BC will reduce system performance.
152c1821c2eSGerald Schaefer
153c1821c2eSGerald Schaefer	  Note that this option will also be selected by selecting the execute
154c1821c2eSGerald Schaefer	  protection option below. Enabling the execute protection via the
155c1821c2eSGerald Schaefer	  noexec kernel parameter will also switch the addressing modes,
156c1821c2eSGerald Schaefer	  independent of the switch_amode kernel parameter.
157c1821c2eSGerald Schaefer
158c1821c2eSGerald Schaefer
159c1821c2eSGerald Schaeferconfig S390_EXEC_PROTECT
160c1821c2eSGerald Schaefer	bool "Data execute protection"
161c1821c2eSGerald Schaefer	select S390_SWITCH_AMODE
162c1821c2eSGerald Schaefer	help
163c1821c2eSGerald Schaefer	  This option allows to enable a buffer overflow protection for user
164c1821c2eSGerald Schaefer	  space programs and it also selects the addressing mode option above.
165c1821c2eSGerald Schaefer	  The kernel parameter noexec=on will enable this feature and also
166c1821c2eSGerald Schaefer	  switch the addressing modes, default is disabled. Enabling this (via
167c1821c2eSGerald Schaefer	  kernel parameter) on machines earlier than IBM System z9-109 EC/BC
168c1821c2eSGerald Schaefer	  will reduce system performance.
169c1821c2eSGerald Schaefer
1701da177e4SLinus Torvaldscomment "Code generation options"
1711da177e4SLinus Torvalds
1721da177e4SLinus Torvaldschoice
1731da177e4SLinus Torvalds	prompt "Processor type"
1741da177e4SLinus Torvalds	default MARCH_G5
1751da177e4SLinus Torvalds
1761da177e4SLinus Torvaldsconfig MARCH_G5
1771da177e4SLinus Torvalds	bool "S/390 model G5 and G6"
178347a8dc3SMartin Schwidefsky	depends on !64BIT
1791da177e4SLinus Torvalds	help
1801da177e4SLinus Torvalds	  Select this to build a 31 bit kernel that works
1811da177e4SLinus Torvalds	  on all S/390 and zSeries machines.
1821da177e4SLinus Torvalds
1831da177e4SLinus Torvaldsconfig MARCH_Z900
1841da177e4SLinus Torvalds	bool "IBM eServer zSeries model z800 and z900"
1851da177e4SLinus Torvalds	help
1861da177e4SLinus Torvalds	  Select this to optimize for zSeries machines. This
1871da177e4SLinus Torvalds	  will enable some optimizations that are not available
1881da177e4SLinus Torvalds	  on older 31 bit only CPUs.
1891da177e4SLinus Torvalds
1901da177e4SLinus Torvaldsconfig MARCH_Z990
1911da177e4SLinus Torvalds	bool "IBM eServer zSeries model z890 and z990"
1921da177e4SLinus Torvalds	help
1931da177e4SLinus Torvalds	  Select this enable optimizations for model z890/z990.
1941da177e4SLinus Torvalds	  This will be slightly faster but does not work on
1951da177e4SLinus Torvalds	  older machines such as the z900.
1961da177e4SLinus Torvalds
1970efa4703SChristian Borntraegerconfig MARCH_Z9_109
1980efa4703SChristian Borntraeger	bool "IBM System z9"
1990efa4703SChristian Borntraeger	help
2000efa4703SChristian Borntraeger	  Select this to enable optimizations for IBM System z9-109, IBM
2010efa4703SChristian Borntraeger	  System z9 Enterprise Class (z9 EC), and IBM System z9 Business
2020efa4703SChristian Borntraeger	  Class (z9 BC). The kernel will be slightly faster but will not
2030efa4703SChristian Borntraeger	  work on older machines such as the z990, z890, z900, and z800.
2040efa4703SChristian Borntraeger
2051da177e4SLinus Torvaldsendchoice
2061da177e4SLinus Torvalds
2071da177e4SLinus Torvaldsconfig PACK_STACK
2081da177e4SLinus Torvalds	bool "Pack kernel stack"
2091da177e4SLinus Torvalds	help
2101da177e4SLinus Torvalds	  This option enables the compiler option -mkernel-backchain if it
2111da177e4SLinus Torvalds	  is available. If the option is available the compiler supports
2121da177e4SLinus Torvalds	  the new stack layout which dramatically reduces the minimum stack
2131da177e4SLinus Torvalds	  frame size. With an old compiler a non-leaf function needs a
2141da177e4SLinus Torvalds	  minimum of 96 bytes on 31 bit and 160 bytes on 64 bit. With
2151da177e4SLinus Torvalds	  -mkernel-backchain the minimum size drops to 16 byte on 31 bit
2161da177e4SLinus Torvalds	  and 24 byte on 64 bit.
2171da177e4SLinus Torvalds
2181da177e4SLinus Torvalds	  Say Y if you are unsure.
2191da177e4SLinus Torvalds
2201da177e4SLinus Torvaldsconfig SMALL_STACK
2211da177e4SLinus Torvalds	bool "Use 4kb/8kb for kernel stack instead of 8kb/16kb"
22274f8f557SHeiko Carstens	depends on PACK_STACK && !LOCKDEP
2231da177e4SLinus Torvalds	help
2241da177e4SLinus Torvalds	  If you say Y here and the compiler supports the -mkernel-backchain
2251da177e4SLinus Torvalds	  option the kernel will use a smaller kernel stack size. For 31 bit
2261da177e4SLinus Torvalds	  the reduced size is 4kb instead of 8kb and for 64 bit it is 8kb
2271da177e4SLinus Torvalds	  instead of 16kb. This allows to run more thread on a system and
2281da177e4SLinus Torvalds	  reduces the pressure on the memory management for higher order
2291da177e4SLinus Torvalds	  page allocations.
2301da177e4SLinus Torvalds
2311da177e4SLinus Torvalds	  Say N if you are unsure.
2321da177e4SLinus Torvalds
2331da177e4SLinus Torvalds
2341da177e4SLinus Torvaldsconfig CHECK_STACK
2351da177e4SLinus Torvalds	bool "Detect kernel stack overflow"
2361da177e4SLinus Torvalds	help
2371da177e4SLinus Torvalds	  This option enables the compiler option -mstack-guard and
2381da177e4SLinus Torvalds	  -mstack-size if they are available. If the compiler supports them
2391da177e4SLinus Torvalds	  it will emit additional code to each function prolog to trigger
2401da177e4SLinus Torvalds	  an illegal operation if the kernel stack is about to overflow.
2411da177e4SLinus Torvalds
2421da177e4SLinus Torvalds	  Say N if you are unsure.
2431da177e4SLinus Torvalds
2441da177e4SLinus Torvaldsconfig STACK_GUARD
2451da177e4SLinus Torvalds	int "Size of the guard area (128-1024)"
2461da177e4SLinus Torvalds	range 128 1024
2471da177e4SLinus Torvalds	depends on CHECK_STACK
2481da177e4SLinus Torvalds	default "256"
2491da177e4SLinus Torvalds	help
2501da177e4SLinus Torvalds	  This allows you to specify the size of the guard area at the lower
2511da177e4SLinus Torvalds	  end of the kernel stack. If the kernel stack points into the guard
2521da177e4SLinus Torvalds	  area on function entry an illegal operation is triggered. The size
2531da177e4SLinus Torvalds	  needs to be a power of 2. Please keep in mind that the size of an
2541da177e4SLinus Torvalds	  interrupt frame is 184 bytes for 31 bit and 328 bytes on 64 bit.
2551da177e4SLinus Torvalds	  The minimum size for the stack guard should be 256 for 31 bit and
2561da177e4SLinus Torvalds	  512 for 64 bit.
2571da177e4SLinus Torvalds
2581da177e4SLinus Torvaldsconfig WARN_STACK
2591da177e4SLinus Torvalds	bool "Emit compiler warnings for function with broken stack usage"
2601da177e4SLinus Torvalds	help
2611da177e4SLinus Torvalds	  This option enables the compiler options -mwarn-framesize and
2621da177e4SLinus Torvalds	  -mwarn-dynamicstack. If the compiler supports these options it
2631da177e4SLinus Torvalds	  will generate warnings for function which either use alloca or
2641da177e4SLinus Torvalds	  create a stack frame bigger then CONFIG_WARN_STACK_SIZE.
2651da177e4SLinus Torvalds
2661da177e4SLinus Torvalds	  Say N if you are unsure.
2671da177e4SLinus Torvalds
2681da177e4SLinus Torvaldsconfig WARN_STACK_SIZE
2691da177e4SLinus Torvalds	int "Maximum frame size considered safe (128-2048)"
2701da177e4SLinus Torvalds	range 128 2048
2711da177e4SLinus Torvalds	depends on WARN_STACK
2721da177e4SLinus Torvalds	default "256"
2731da177e4SLinus Torvalds	help
2741da177e4SLinus Torvalds	  This allows you to specify the maximum frame size a function may
2751da177e4SLinus Torvalds	  have without the compiler complaining about it.
2761da177e4SLinus Torvalds
27739b742f9SHeiko Carstensconfig ARCH_POPULATES_NODE_MAP
27839b742f9SHeiko Carstens	def_bool y
27939b742f9SHeiko Carstens
2803f22ab27SDave Hansensource "mm/Kconfig"
2813f22ab27SDave Hansen
282f4eb07c1SHeiko Carstensconfig HOLES_IN_ZONE
283f4eb07c1SHeiko Carstens	def_bool y
284f4eb07c1SHeiko Carstens
2851da177e4SLinus Torvaldscomment "I/O subsystem configuration"
2861da177e4SLinus Torvalds
2871da177e4SLinus Torvaldsconfig MACHCHK_WARNING
2881da177e4SLinus Torvalds	bool "Process warning machine checks"
2891da177e4SLinus Torvalds	help
2901da177e4SLinus Torvalds	  Select this option if you want the machine check handler on IBM S/390 or
2911da177e4SLinus Torvalds	  zSeries to process warning machine checks (e.g. on power failures).
2921da177e4SLinus Torvalds	  If unsure, say "Y".
2931da177e4SLinus Torvalds
2941da177e4SLinus Torvaldsconfig QDIO
2951da177e4SLinus Torvalds	tristate "QDIO support"
2961da177e4SLinus Torvalds	---help---
2978129ee16SFrank Pavlic	  This driver provides the Queued Direct I/O base support for
2988129ee16SFrank Pavlic	  IBM mainframes.
2991da177e4SLinus Torvalds
3001da177e4SLinus Torvalds	  For details please refer to the documentation provided by IBM at
3011da177e4SLinus Torvalds	  <http://www10.software.ibm.com/developerworks/opensource/linux390>
3021da177e4SLinus Torvalds
3031da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
3041da177e4SLinus Torvalds	  module will be called qdio.
3051da177e4SLinus Torvalds
3061da177e4SLinus Torvalds	  If unsure, say Y.
3071da177e4SLinus Torvalds
3081da177e4SLinus Torvaldsconfig QDIO_DEBUG
3091da177e4SLinus Torvalds	bool "Extended debugging information"
3101da177e4SLinus Torvalds	depends on QDIO
3111da177e4SLinus Torvalds	help
3128129ee16SFrank Pavlic	  Say Y here to get extended debugging output in
3138129ee16SFrank Pavlic	    /sys/kernel/debug/s390dbf/qdio...
3141da177e4SLinus Torvalds	  Warning: this option reduces the performance of the QDIO module.
3151da177e4SLinus Torvalds
3161da177e4SLinus Torvalds	  If unsure, say N.
3171da177e4SLinus Torvalds
3181da177e4SLinus Torvaldscomment "Misc"
3191da177e4SLinus Torvalds
3201da177e4SLinus Torvaldsconfig PREEMPT
3211da177e4SLinus Torvalds	bool "Preemptible Kernel"
3221da177e4SLinus Torvalds	help
3231da177e4SLinus Torvalds	  This option reduces the latency of the kernel when reacting to
3241da177e4SLinus Torvalds	  real-time or interactive events by allowing a low priority process to
3251da177e4SLinus Torvalds	  be preempted even if it is in kernel mode executing a system call.
3261da177e4SLinus Torvalds	  This allows applications to run more reliably even when the system is
3271da177e4SLinus Torvalds	  under load.
3281da177e4SLinus Torvalds
3291da177e4SLinus Torvalds	  Say N if you are unsure.
3301da177e4SLinus Torvalds
3311da177e4SLinus Torvaldsconfig IPL
3321da177e4SLinus Torvalds	bool "Builtin IPL record support"
3331da177e4SLinus Torvalds	help
3341da177e4SLinus Torvalds	  If you want to use the produced kernel to IPL directly from a
3351da177e4SLinus Torvalds	  device, you have to merge a bootsector specific to the device
3361da177e4SLinus Torvalds	  into the first bytes of the kernel. You will have to select the
3371da177e4SLinus Torvalds	  IPL device.
3381da177e4SLinus Torvalds
3391da177e4SLinus Torvaldschoice
3401da177e4SLinus Torvalds	prompt "IPL method generated into head.S"
3411da177e4SLinus Torvalds	depends on IPL
3421da177e4SLinus Torvalds	default IPL_TAPE
3431da177e4SLinus Torvalds	help
3441da177e4SLinus Torvalds	  Select "tape" if you want to IPL the image from a Tape.
3451da177e4SLinus Torvalds
3461da177e4SLinus Torvalds	  Select "vm_reader" if you are running under VM/ESA and want
3471da177e4SLinus Torvalds	  to IPL the image from the emulated card reader.
3481da177e4SLinus Torvalds
3491da177e4SLinus Torvaldsconfig IPL_TAPE
3501da177e4SLinus Torvalds	bool "tape"
3511da177e4SLinus Torvalds
3521da177e4SLinus Torvaldsconfig IPL_VM
3531da177e4SLinus Torvalds	bool "vm_reader"
3541da177e4SLinus Torvalds
3551da177e4SLinus Torvaldsendchoice
3561da177e4SLinus Torvalds
3571da177e4SLinus Torvaldssource "fs/Kconfig.binfmt"
3581da177e4SLinus Torvalds
3591da177e4SLinus Torvaldsconfig PROCESS_DEBUG
3601da177e4SLinus Torvalds	bool "Show crashed user process info"
3611da177e4SLinus Torvalds	help
3621da177e4SLinus Torvalds	  Say Y to print all process fault locations to the console.  This is
3631da177e4SLinus Torvalds	  a debugging option; you probably do not want to set it unless you
3641da177e4SLinus Torvalds	  are an S390 port maintainer.
3651da177e4SLinus Torvalds
3661da177e4SLinus Torvaldsconfig PFAULT
3671da177e4SLinus Torvalds	bool "Pseudo page fault support"
3681da177e4SLinus Torvalds	help
3691da177e4SLinus Torvalds	  Select this option, if you want to use PFAULT pseudo page fault
3701da177e4SLinus Torvalds	  handling under VM. If running native or in LPAR, this option
3711da177e4SLinus Torvalds	  has no effect. If your VM does not support PFAULT, PAGEEX
3721da177e4SLinus Torvalds	  pseudo page fault handling will be used.
3731da177e4SLinus Torvalds	  Note that VM 4.2 supports PFAULT but has a bug in its
3741da177e4SLinus Torvalds	  implementation that causes some problems.
3751da177e4SLinus Torvalds	  Everybody who wants to run Linux under VM != VM4.2 should select
3761da177e4SLinus Torvalds	  this option.
3771da177e4SLinus Torvalds
3781da177e4SLinus Torvaldsconfig SHARED_KERNEL
3791da177e4SLinus Torvalds	bool "VM shared kernel support"
3801da177e4SLinus Torvalds	help
3811da177e4SLinus Torvalds	  Select this option, if you want to share the text segment of the
3821da177e4SLinus Torvalds	  Linux kernel between different VM guests. This reduces memory
3831da177e4SLinus Torvalds	  usage with lots of guests but greatly increases kernel size.
3849c9c1761SHeiko Carstens	  Also if a kernel was IPL'ed from a shared segment the kexec system
3859c9c1761SHeiko Carstens	  call will not work.
3861da177e4SLinus Torvalds	  You should only select this option if you know what you are
3871da177e4SLinus Torvalds	  doing and want to exploit this feature.
3881da177e4SLinus Torvalds
3891da177e4SLinus Torvaldsconfig CMM
3901da177e4SLinus Torvalds	tristate "Cooperative memory management"
3911da177e4SLinus Torvalds	help
3921da177e4SLinus Torvalds	  Select this option, if you want to enable the kernel interface
3931da177e4SLinus Torvalds	  to reduce the memory size of the system. This is accomplished
3941da177e4SLinus Torvalds	  by allocating pages of memory and put them "on hold". This only
3951da177e4SLinus Torvalds	  makes sense for a system running under VM where the unused pages
3961da177e4SLinus Torvalds	  will be reused by VM for other guest systems. The interface
3971da177e4SLinus Torvalds	  allows an external monitor to balance memory of many systems.
3981da177e4SLinus Torvalds	  Everybody who wants to run Linux under VM should select this
3991da177e4SLinus Torvalds	  option.
4001da177e4SLinus Torvalds
4011da177e4SLinus Torvaldsconfig CMM_PROC
4021da177e4SLinus Torvalds	bool "/proc interface to cooperative memory management"
4031da177e4SLinus Torvalds	depends on CMM
4041da177e4SLinus Torvalds	help
4051da177e4SLinus Torvalds	  Select this option to enable the /proc interface to the
4061da177e4SLinus Torvalds	  cooperative memory management.
4071da177e4SLinus Torvalds
4081da177e4SLinus Torvaldsconfig CMM_IUCV
4091da177e4SLinus Torvalds	bool "IUCV special message interface to cooperative memory management"
4101da177e4SLinus Torvalds	depends on CMM && (SMSGIUCV=y || CMM=SMSGIUCV)
4111da177e4SLinus Torvalds	help
4121da177e4SLinus Torvalds	  Select this option to enable the special message interface to
4131da177e4SLinus Torvalds	  the cooperative memory management.
4141da177e4SLinus Torvalds
4151da177e4SLinus Torvaldsconfig VIRT_TIMER
4161da177e4SLinus Torvalds	bool "Virtual CPU timer support"
4171da177e4SLinus Torvalds	help
4181da177e4SLinus Torvalds	  This provides a kernel interface for virtual CPU timers.
4191da177e4SLinus Torvalds	  Default is disabled.
4201da177e4SLinus Torvalds
4211da177e4SLinus Torvaldsconfig VIRT_CPU_ACCOUNTING
4221da177e4SLinus Torvalds	bool "Base user process accounting on virtual cpu timer"
4231da177e4SLinus Torvalds	depends on VIRT_TIMER
4241da177e4SLinus Torvalds	help
4251da177e4SLinus Torvalds	  Select this option to use CPU timer deltas to do user
4261da177e4SLinus Torvalds	  process accounting.
4271da177e4SLinus Torvalds
4281da177e4SLinus Torvaldsconfig APPLDATA_BASE
4291da177e4SLinus Torvalds	bool "Linux - VM Monitor Stream, base infrastructure"
4301da177e4SLinus Torvalds	depends on PROC_FS && VIRT_TIMER=y
4311da177e4SLinus Torvalds	help
4321da177e4SLinus Torvalds	  This provides a kernel interface for creating and updating z/VM APPLDATA
4331da177e4SLinus Torvalds	  monitor records. The monitor records are updated at certain time
4341da177e4SLinus Torvalds	  intervals, once the timer is started.
4351da177e4SLinus Torvalds	  Writing 1 or 0 to /proc/appldata/timer starts(1) or stops(0) the timer,
4361da177e4SLinus Torvalds	  i.e. enables or disables monitoring on the Linux side.
4371da177e4SLinus Torvalds	  A custom interval value (in seconds) can be written to
4381da177e4SLinus Torvalds	  /proc/appldata/interval.
4391da177e4SLinus Torvalds
4401da177e4SLinus Torvalds	  Defaults are 60 seconds interval and timer off.
4411da177e4SLinus Torvalds	  The /proc entries can also be read from, showing the current settings.
4421da177e4SLinus Torvalds
4431da177e4SLinus Torvaldsconfig APPLDATA_MEM
4441da177e4SLinus Torvalds	tristate "Monitor memory management statistics"
44562fb2ba3SAl Viro	depends on APPLDATA_BASE && VM_EVENT_COUNTERS
4461da177e4SLinus Torvalds	help
4471da177e4SLinus Torvalds	  This provides memory management related data to the Linux - VM Monitor
4481da177e4SLinus Torvalds	  Stream, like paging/swapping rate, memory utilisation, etc.
4491da177e4SLinus Torvalds	  Writing 1 or 0 to /proc/appldata/memory creates(1) or removes(0) a z/VM
4501da177e4SLinus Torvalds	  APPLDATA monitor record, i.e. enables or disables monitoring this record
4511da177e4SLinus Torvalds	  on the z/VM side.
4521da177e4SLinus Torvalds
4531da177e4SLinus Torvalds	  Default is disabled.
4541da177e4SLinus Torvalds	  The /proc entry can also be read from, showing the current settings.
4551da177e4SLinus Torvalds
4561da177e4SLinus Torvalds	  This can also be compiled as a module, which will be called
4571da177e4SLinus Torvalds	  appldata_mem.o.
4581da177e4SLinus Torvalds
4591da177e4SLinus Torvaldsconfig APPLDATA_OS
4601da177e4SLinus Torvalds	tristate "Monitor OS statistics"
4611da177e4SLinus Torvalds	depends on APPLDATA_BASE
4621da177e4SLinus Torvalds	help
4631da177e4SLinus Torvalds	  This provides OS related data to the Linux - VM Monitor Stream, like
4641da177e4SLinus Torvalds	  CPU utilisation, etc.
4651da177e4SLinus Torvalds	  Writing 1 or 0 to /proc/appldata/os creates(1) or removes(0) a z/VM
4661da177e4SLinus Torvalds	  APPLDATA monitor record, i.e. enables or disables monitoring this record
4671da177e4SLinus Torvalds	  on the z/VM side.
4681da177e4SLinus Torvalds
4691da177e4SLinus Torvalds	  Default is disabled.
4701da177e4SLinus Torvalds	  This can also be compiled as a module, which will be called
4711da177e4SLinus Torvalds	  appldata_os.o.
4721da177e4SLinus Torvalds
4731da177e4SLinus Torvaldsconfig APPLDATA_NET_SUM
4741da177e4SLinus Torvalds	tristate "Monitor overall network statistics"
4751da177e4SLinus Torvalds	depends on APPLDATA_BASE
4761da177e4SLinus Torvalds	help
4771da177e4SLinus Torvalds	  This provides network related data to the Linux - VM Monitor Stream,
4781da177e4SLinus Torvalds	  currently there is only a total sum of network I/O statistics, no
4791da177e4SLinus Torvalds	  per-interface data.
4801da177e4SLinus Torvalds	  Writing 1 or 0 to /proc/appldata/net_sum creates(1) or removes(0) a z/VM
4811da177e4SLinus Torvalds	  APPLDATA monitor record, i.e. enables or disables monitoring this record
4821da177e4SLinus Torvalds	  on the z/VM side.
4831da177e4SLinus Torvalds
4841da177e4SLinus Torvalds	  Default is disabled.
4851da177e4SLinus Torvalds	  This can also be compiled as a module, which will be called
4861da177e4SLinus Torvalds	  appldata_net_sum.o.
4871da177e4SLinus Torvalds
4881da177e4SLinus Torvaldsconfig NO_IDLE_HZ
4891da177e4SLinus Torvalds	bool "No HZ timer ticks in idle"
4901da177e4SLinus Torvalds	help
4911da177e4SLinus Torvalds	  Switches the regular HZ timer off when the system is going idle.
4921da177e4SLinus Torvalds	  This helps z/VM to detect that the Linux system is idle. VM can
4931da177e4SLinus Torvalds	  then "swap-out" this guest which reduces memory usage. It also
4941da177e4SLinus Torvalds	  reduces the overhead of idle systems.
4951da177e4SLinus Torvalds
4961da177e4SLinus Torvalds	  The HZ timer can be switched on/off via /proc/sys/kernel/hz_timer.
4971da177e4SLinus Torvalds	  hz_timer=0 means HZ timer is disabled. hz_timer=1 means HZ
4981da177e4SLinus Torvalds	  timer is active.
4991da177e4SLinus Torvalds
5001da177e4SLinus Torvaldsconfig NO_IDLE_HZ_INIT
5011da177e4SLinus Torvalds	bool "HZ timer in idle off by default"
5021da177e4SLinus Torvalds	depends on NO_IDLE_HZ
5031da177e4SLinus Torvalds	help
5041da177e4SLinus Torvalds	  The HZ timer is switched off in idle by default. That means the
5051da177e4SLinus Torvalds	  HZ timer is already disabled at boot time.
5061da177e4SLinus Torvalds
50724bbb1faSMichael Holzheuconfig S390_HYPFS_FS
50824bbb1faSMichael Holzheu	bool "s390 hypervisor file system support"
50924bbb1faSMichael Holzheu	select SYS_HYPERVISOR
51024bbb1faSMichael Holzheu	default y
51124bbb1faSMichael Holzheu	help
51224bbb1faSMichael Holzheu	  This is a virtual file system intended to provide accounting
51324bbb1faSMichael Holzheu	  information in an s390 hypervisor environment.
51424bbb1faSMichael Holzheu
515cf13f0eaSHeiko Carstensconfig KEXEC
51607d43ce6SHeiko Carstens	bool "kexec system call"
517cf13f0eaSHeiko Carstens	help
518cf13f0eaSHeiko Carstens	  kexec is a system call that implements the ability to shutdown your
519cf13f0eaSHeiko Carstens	  current kernel, and to start another kernel.  It is like a reboot
520cf13f0eaSHeiko Carstens	  but is independent of hardware/microcode support.
521cf13f0eaSHeiko Carstens
5221da177e4SLinus Torvaldsendmenu
5231da177e4SLinus Torvalds
524d5950b43SSam Ravnborgsource "net/Kconfig"
525d5950b43SSam Ravnborg
5261da177e4SLinus Torvaldsconfig PCMCIA
5271da177e4SLinus Torvalds	bool
5281da177e4SLinus Torvalds	default n
5291da177e4SLinus Torvalds
5301da177e4SLinus Torvaldssource "drivers/base/Kconfig"
5311da177e4SLinus Torvalds
53261d3ad0eSMartin Schwidefskysource "drivers/connector/Kconfig"
53361d3ad0eSMartin Schwidefsky
5341da177e4SLinus Torvaldssource "drivers/scsi/Kconfig"
5351da177e4SLinus Torvalds
5361da177e4SLinus Torvaldssource "drivers/s390/Kconfig"
5371da177e4SLinus Torvalds
538d5950b43SSam Ravnborgsource "drivers/net/Kconfig"
5391da177e4SLinus Torvalds
5401da177e4SLinus Torvaldssource "fs/Kconfig"
5411da177e4SLinus Torvalds
5424ba069b8SMichael Grundymenu "Instrumentation Support"
5434ba069b8SMichael Grundy
5441da177e4SLinus Torvaldssource "arch/s390/oprofile/Kconfig"
5451da177e4SLinus Torvalds
5464ba069b8SMichael Grundyconfig KPROBES
5474ba069b8SMichael Grundy	bool "Kprobes (EXPERIMENTAL)"
5484ba069b8SMichael Grundy	depends on EXPERIMENTAL && MODULES
5494ba069b8SMichael Grundy	help
5504ba069b8SMichael Grundy	  Kprobes allows you to trap at almost any kernel address and
5514ba069b8SMichael Grundy	  execute a callback function.	register_kprobe() establishes
5524ba069b8SMichael Grundy	  a probepoint and specifies the callback.  Kprobes is useful
5534ba069b8SMichael Grundy	  for kernel debugging, non-intrusive instrumentation and testing.
5544ba069b8SMichael Grundy	  If in doubt, say "N".
5554ba069b8SMichael Grundy
5564ba069b8SMichael Grundyendmenu
5574ba069b8SMichael Grundy
5581da177e4SLinus Torvaldssource "arch/s390/Kconfig.debug"
5591da177e4SLinus Torvalds
5601da177e4SLinus Torvaldssource "security/Kconfig"
5611da177e4SLinus Torvalds
5621da177e4SLinus Torvaldssource "crypto/Kconfig"
5631da177e4SLinus Torvalds
5641da177e4SLinus Torvaldssource "lib/Kconfig"
565