i386: prepare shared kernel/e820.c
[safe/jmp/linux-2.6] / arch / s390 / Kconfig
index 01c5c08..b711321 100644 (file)
@@ -4,32 +4,53 @@
 #
 
 config MMU
-       bool
-       default y
+       def_bool y
+
+config ZONE_DMA
+       def_bool y
+       depends on 64BIT
+
+config LOCKDEP_SUPPORT
+       def_bool y
+
+config STACKTRACE_SUPPORT
+       def_bool y
 
 config RWSEM_GENERIC_SPINLOCK
        bool
 
 config RWSEM_XCHGADD_ALGORITHM
+       def_bool y
+
+config ARCH_HAS_ILOG2_U32
        bool
-       default y
+       default n
 
-config GENERIC_HWEIGHT
+config ARCH_HAS_ILOG2_U64
        bool
-       default y
+       default n
+
+config GENERIC_HWEIGHT
+       def_bool y
+
+config GENERIC_TIME
+       def_bool y
 
-config GENERIC_CALIBRATE_DELAY
+config GENERIC_BUG
        bool
+       depends on BUG
        default y
 
-config GENERIC_BUST_SPINLOCK
-       bool
+config NO_IOMEM
+       def_bool y
+
+config NO_DMA
+       def_bool y
 
 mainmenu "Linux Kernel Configuration"
 
 config S390
-       bool
-       default y
+       def_bool y
 
 source "init/Kconfig"
 
@@ -43,6 +64,10 @@ config 64BIT
          Select this option if you have a 64 bit IBM zSeries machine
          and want to use the 64 bit addressing mode.
 
+config 32BIT
+       bool
+       default y if !64BIT
+
 config SMP
        bool "Symmetric multi-processing support"
        ---help---
@@ -84,10 +109,6 @@ config HOTPLUG_CPU
          can be controlled through /sys/devices/system/cpu/cpu#.
          Say N if you want to disable CPU hotplug.
 
-config DEFAULT_MIGRATION_COST
-       int
-       default "1000000"
-
 config MATHEMU
        bool "IEEE FPU emulation"
        depends on MARCH_G5
@@ -110,12 +131,34 @@ config SYSVIPC_COMPAT
        depends on COMPAT && SYSVIPC
        default y
 
-config BINFMT_ELF32
-       tristate "Kernel support for 31 bit ELF binaries"
-       depends on COMPAT
+config AUDIT_ARCH
+       bool
+       default y
+
+config S390_SWITCH_AMODE
+       bool "Switch kernel/user addressing modes"
        help
-         This allows you to run 32-bit Linux/ELF binaries on your zSeries
-         in 64 bit mode. Everybody wants this; say Y.
+         This option allows to switch the addressing modes of kernel and user
+         space. The kernel parameter switch_amode=on will enable this feature,
+         default is disabled. Enabling this (via kernel parameter) on machines
+         earlier than IBM System z9-109 EC/BC will reduce system performance.
+
+         Note that this option will also be selected by selecting the execute
+         protection option below. Enabling the execute protection via the
+         noexec kernel parameter will also switch the addressing modes,
+         independent of the switch_amode kernel parameter.
+
+
+config S390_EXEC_PROTECT
+       bool "Data execute protection"
+       select S390_SWITCH_AMODE
+       help
+         This option allows to enable a buffer overflow protection for user
+         space programs and it also selects the addressing mode option above.
+         The kernel parameter noexec=on will enable this feature and also
+         switch the addressing modes, default is disabled. Enabling this (via
+         kernel parameter) on machines earlier than IBM System z9-109 EC/BC
+         will reduce system performance.
 
 comment "Code generation options"
 
@@ -144,6 +187,14 @@ config MARCH_Z990
          This will be slightly faster but does not work on
          older machines such as the z900.
 
+config MARCH_Z9_109
+       bool "IBM System z9"
+       help
+         Select this to enable optimizations for IBM System z9-109, IBM
+         System z9 Enterprise Class (z9 EC), and IBM System z9 Business
+         Class (z9 BC). The kernel will be slightly faster but will not
+         work on older machines such as the z990, z890, z900, and z800.
+
 endchoice
 
 config PACK_STACK
@@ -161,7 +212,7 @@ config PACK_STACK
 
 config SMALL_STACK
        bool "Use 4kb/8kb for kernel stack instead of 8kb/16kb"
-       depends on PACK_STACK
+       depends on PACK_STACK && !LOCKDEP
        help
          If you say Y here and the compiler supports the -mkernel-backchain
          option the kernel will use a smaller kernel stack size. For 31 bit
@@ -216,8 +267,18 @@ config WARN_STACK_SIZE
          This allows you to specify the maximum frame size a function may
          have without the compiler complaining about it.
 
+config ARCH_POPULATES_NODE_MAP
+       def_bool y
+
+comment "Kernel preemption"
+
+source "kernel/Kconfig.preempt"
+
 source "mm/Kconfig"
 
+config HOLES_IN_ZONE
+       def_bool y
+
 comment "I/O subsystem configuration"
 
 config MACHCHK_WARNING
@@ -241,14 +302,6 @@ config QDIO
 
          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.
-
 config QDIO_DEBUG
        bool "Extended debugging information"
        depends on QDIO
@@ -261,17 +314,6 @@ config QDIO_DEBUG
 
 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
@@ -325,6 +367,8 @@ config SHARED_KERNEL
          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.
+         Also if a kernel was IPL'ed from a shared segment the kexec system
+         call will not work.
          You should only select this option if you know what you are
          doing and want to exploit this feature.
 
@@ -384,7 +428,7 @@ config APPLDATA_BASE
 
 config APPLDATA_MEM
        tristate "Monitor memory management statistics"
-       depends on APPLDATA_BASE
+       depends on APPLDATA_BASE && VM_EVENT_COUNTERS
        help
          This provides memory management related data to the Linux - VM Monitor
          Stream, like paging/swapping rate, memory utilisation, etc.
@@ -427,6 +471,8 @@ config APPLDATA_NET_SUM
          This can also be compiled as a module, which will be called
          appldata_net_sum.o.
 
+source kernel/Kconfig.hz
+
 config NO_IDLE_HZ
        bool "No HZ timer ticks in idle"
        help
@@ -446,35 +492,58 @@ config NO_IDLE_HZ_INIT
          The HZ timer is switched off in idle by default. That means the
          HZ timer is already disabled at boot time.
 
+config S390_HYPFS_FS
+       bool "s390 hypervisor file system support"
+       select SYS_HYPERVISOR
+       default y
+       help
+         This is a virtual file system intended to provide accounting
+         information in an s390 hypervisor environment.
+
 config KEXEC
-       bool "kexec system call (EXPERIMENTAL)"
-       depends on EXPERIMENTAL
+       bool "kexec system call"
        help
          kexec is a system call that implements the ability to shutdown your
          current kernel, and to start another kernel.  It is like a reboot
          but is independent of hardware/microcode support.
 
+config ZFCPDUMP
+       tristate "zfcpdump support"
+       select SMP
+       default n
+       help
+         Select this option if you want to build an zfcpdump enabled kernel.
+         Refer to "Documentation/s390/zfcpdump.txt" for more details on this.
+
 endmenu
 
 source "net/Kconfig"
 
 config PCMCIA
-       bool
-       default n
+       def_bool n
 
-source "drivers/base/Kconfig"
+config CCW
+       def_bool y
 
-source "drivers/connector/Kconfig"
+source "drivers/Kconfig"
 
-source "drivers/scsi/Kconfig"
+source "fs/Kconfig"
 
-source "drivers/s390/Kconfig"
+menu "Instrumentation Support"
 
-source "drivers/net/Kconfig"
+source "arch/s390/oprofile/Kconfig"
 
-source "fs/Kconfig"
+config KPROBES
+       bool "Kprobes (EXPERIMENTAL)"
+       depends on EXPERIMENTAL && MODULES
+       help
+         Kprobes allows you to trap at almost any kernel address and
+         execute a callback function.  register_kprobe() establishes
+         a probepoint and specifies the callback.  Kprobes is useful
+         for kernel debugging, non-intrusive instrumentation and testing.
+         If in doubt, say "N".
 
-source "arch/s390/oprofile/Kconfig"
+endmenu
 
 source "arch/s390/Kconfig.debug"