# # For a description of the syntax of this configuration file, # see Documentation/kbuild/kconfig-language.txt. # config MMU bool default y config RWSEM_GENERIC_SPINLOCK bool config RWSEM_XCHGADD_ALGORITHM bool default y config GENERIC_BUST_SPINLOCK bool mainmenu "Linux Kernel Configuration" config ARCH_S390 bool default y help Select this option, if you want to run the Kernel on one of IBM's mainframes of the S/390 generation. You should have installed the s390-compiler released by IBM (based on gcc-2.95.1) before. config ARCH_S390X bool default y source "init/Kconfig" menu "Base setup" comment "Processor type and features" config SMP bool "Symmetric multi-processing support" ---help--- This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor machines, but will use only one CPU of a multiprocessor machine. If you say Y here, the kernel will run on many, but not all, singleprocessor machines. On a singleprocessor machine, the kernel will run faster if you say N here. Note that if you say Y here and choose architecture "586" or "Pentium" under "Processor family", the kernel will not work on 486 architectures. Similarly, multiprocessor kernels for the "PPro" architecture may not work on all Pentium based boards. People using multiprocessor machines who say Y here should also say Y to "Enhanced Real Time Clock Support", below. The "Advanced Power Management" code will be disabled if you say Y here. See also the <file:Documentation/smp.tex>, <file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>, <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at <http://www.linuxdoc.org/docs.html#howto>. If you don't know what to do here, say N. config NR_CPUS int "Maximum number of CPUs (2-64)" depends on SMP default "64" help This allows you to specify the maximum number of CPUs which this kernel will support. The maximum supported value is 64 and the minimum value which makes sense is 2. This is purely to save memory - each supported CPU adds approximately sixteen kilobytes to the kernel image. config S390_SUPPORT bool "Kernel support for 31 bit emulation" help Select this option if you want to enable your system kernel to handle system-calls from ELF binaries for 31 bit ESA. This option (and some other stuff like libraries and such) is needed for executing 31 bit applications. It is safe to say "Y". config COMPAT bool depends on S390_SUPPORT default y config BINFMT_ELF32 tristate "Kernel support for 31 bit ELF binaries" depends on S390_SUPPORT help This allows you to run 32-bit Linux/ELF binaries on your Ultra. Everybody wants this; say Y. comment "I/O subsystem configuration" config MACHCHK_WARNING bool "Process warning machine checks" help Select this option if you want the machine check handler on IBM S/390 or zSeries to process warning machine checks (e.g. on power failures). If unsure, say "Y". config QDIO tristate "QDIO support" ---help--- This driver provides the Queued Direct I/O base support for the IBM S/390 (G5 and G6) and eServer zSeries (z800 and z900). For details please refer to the documentation provided by IBM at <http://www10.software.ibm.com/developerworks/opensource/linux390> This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called qdio. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. If unsure, say Y. config QDIO_PERF_STATS bool "Performance statistics in /proc" depends on QDIO help Say Y here to get performance statistics in /proc/qdio_perf If unsure, say N. comment "Misc" config PREEMPT bool "Preemptible Kernel" help This option reduces the latency of the kernel when reacting to real-time or interactive events by allowing a low priority process to be preempted even if it is in kernel mode executing a system call. This allows applications to run more reliably even when the system is under load. Say N if you are unsure. config IPL bool "Builtin IPL record support" help If you want to use the produced kernel to IPL directly from a device, you have to merge a bootsector specific to the device into the first bytes of the kernel. You will have to select the IPL device. choice prompt "IPL method generated into head.S" depends on IPL default IPL_TAPE config IPL_TAPE bool "tape" help Select "tape" if you want to IPL the image from a Tape. Select "vm_reader" if you are running under VM/ESA and want to IPL the image from the emulated card reader. config IPL_VM bool "vm_reader" endchoice config KCORE_ELF bool default y ---help--- If you enabled support for /proc file system then the file /proc/kcore will contain the kernel core image. This can be used in gdb: $ cd /usr/src/linux ; gdb vmlinux /proc/kcore You have two choices here: ELF and A.OUT. Selecting ELF will make /proc/kcore appear in ELF core format as defined by the Executable and Linking Format specification. Selecting A.OUT will choose the old "a.out" format which may be necessary for some old versions of binutils or on some architectures. This is especially useful if you have compiled the kernel with the "-g" option to preserve debugging information. It is mainly used for examining kernel data structures on the live kernel so if you don't understand what this means or are not a kernel hacker, just leave it at its default value ELF. config BINFMT_ELF tristate "Kernel support for ELF binaries" ---help--- ELF (Executable and Linkable Format) is a format for libraries and executables used across different architectures and operating systems. Saying Y here will enable your kernel to run ELF binaries and enlarge it by about 13 KB. ELF support under Linux has now all but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC) because it is portable (this does *not* mean that you will be able to run executables from different architectures or operating systems however) and makes building run-time libraries very easy. Many new executables are distributed solely in ELF format. You definitely want to say Y here. Information about ELF is contained in the ELF HOWTO available from <http://www.linuxdoc.org/docs.html#howto>. If you find that after upgrading from Linux kernel 1.2 and saying Y here, you still can't run any ELF binaries (they just crash), then you'll have to install the newest ELF runtime libraries, including ld.so (check the file <file:Documentation/Changes> for location and latest version). If you want to compile this as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read <file:Documentation/modules.txt>. The module will be called binfmt_elf. Saying M or N here is dangerous because some crucial programs on your system might be in ELF format. config BINFMT_MISC tristate "Kernel support for MISC binaries" ---help--- If you say Y here, it will be possible to plug wrapper-driven binary formats into the kernel. You will like this especially when you use programs that need an interpreter to run like Java, Python or Emacs-Lisp. It's also useful if you often run DOS executables under the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from <http://www.linuxdoc.org/docs.html#howto>). Once you have registered such a binary class with the kernel, you can start one of those programs simply by typing in its name at a shell prompt; Linux will automatically feed it to the correct interpreter. You can do other nice things, too. Read the file <file:Documentation/binfmt_misc.txt> to learn how to use this feature, and <file:Documentation/java.txt> for information about how to include Java support. You must say Y to "/proc file system support" (CONFIG_PROC_FS) to use this part of the kernel. You may say M here for module support and later load the module when you have use for it; the module is called binfmt_misc. If you don't know what to answer at this point, say Y. config PROCESS_DEBUG bool "Show crashed user process info" help Say Y to print all process fault locations to the console. This is a debugging option; you probably do not want to set it unless you are an S390 port maintainer. config PFAULT bool "Pseudo page fault support" help Select this option, if you want to use PFAULT pseudo page fault handling under VM. If running native or in LPAR, this option has no effect. If your VM does not support PFAULT, PAGEEX pseudo page fault handling will be used. Note that VM 4.2 supports PFAULT but has a bug in its implementation that causes some problems. Everybody who wants to run Linux under VM != VM4.2 should select this option. config SHARED_KERNEL bool "VM shared kernel support" help Select this option, if you want to share the text segment of the Linux kernel between different VM guests. This reduces memory usage with lots of guests but greatly increases kernel size. You should only select this option if you know what you are doing and want to exploit this feature. endmenu config PCMCIA bool default n menu "SCSI support" config SCSI tristate "SCSI support" source "drivers/scsi/Kconfig" endmenu source "drivers/s390/Kconfig" source "net/Kconfig" source "fs/Kconfig" menu "Kernel hacking" config DEBUG_KERNEL bool "Kernel debugging" help Say Y here if you are developing drivers or trying to debug and identify kernel problems. config MAGIC_SYSRQ bool "Magic SysRq key" depends on DEBUG_KERNEL help If you say Y here, you will have some control over the system even if the system crashes for example during kernel debugging (e.g., you will be able to flush the buffer cache to disk, reboot the system immediately or dump some status information). This is accomplished by pressing various keys while holding SysRq (Alt+PrintScreen). It also works on a serial console (on PC hardware at least), if you send a BREAK and then within 5 seconds a command keypress. The keys are documented in <file:Documentation/sysrq.txt>. Don't say Y unless you really know what this hack does. config DEBUG_SLAB bool "Debug memory allocations" depends on DEBUG_KERNEL help Say Y here to have the kernel do limited verification on memory allocation as well as poisoning memory on free to catch use of freed memory. config KALLSYMS bool "Load all symbols for debugging/kksymoops" depends on DEBUG_KERNEL help Say Y here to let the kernel print out symbolic crash information and symbolic stack backtraces. This increases the size of the kernel somewhat, as all symbols have to be loaded into the kernel image. config DEBUG_SPINLOCK_SLEEP bool "Sleep-inside-spinlock checking" help If you say Y here, various routines which may sleep will become very noisy if they are called with a spinlock held. endmenu source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig"