Skip to content

Commit

Permalink
[S390] cleanup s390 Kconfig
Browse files Browse the repository at this point in the history
Make use of def_bool and def_tristate where possible and add sensible
defaults to the config symbols where applicable. This shortens the
defconfig file by another ~40 lines.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
  • Loading branch information
Martin Schwidefsky authored and Martin Schwidefsky committed Jan 5, 2011
1 parent 53ec24b commit 6f9a3c3
Show file tree
Hide file tree
Showing 7 changed files with 218 additions and 220 deletions.
129 changes: 67 additions & 62 deletions arch/s390/Kconfig
Original file line number Diff line number Diff line change
@@ -1,13 +1,8 @@
config SCHED_MC
def_bool y
depends on SMP

config MMU
def_bool y

config ZONE_DMA
def_bool y
depends on 64BIT
def_bool y if 64BIT

config LOCKDEP_SUPPORT
def_bool y
Expand All @@ -25,12 +20,10 @@ config RWSEM_XCHGADD_ALGORITHM
def_bool y

config ARCH_HAS_ILOG2_U32
bool
default n
def_bool n

config ARCH_HAS_ILOG2_U64
bool
default n
def_bool n

config GENERIC_HWEIGHT
def_bool y
Expand All @@ -42,9 +35,7 @@ config GENERIC_CLOCKEVENTS
def_bool y

config GENERIC_BUG
bool
depends on BUG
default y
def_bool y if BUG

config GENERIC_BUG_RELATIVE_POINTERS
def_bool y
Expand All @@ -59,13 +50,10 @@ config ARCH_DMA_ADDR_T_64BIT
def_bool 64BIT

config GENERIC_LOCKBREAK
bool
default y
depends on SMP && PREEMPT
def_bool y if SMP && PREEMPT

config PGSTE
bool
default y if KVM
def_bool y if KVM

config VIRT_CPU_ACCOUNTING
def_bool y
Expand Down Expand Up @@ -129,8 +117,7 @@ config S390
select ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE

config SCHED_OMIT_FRAME_POINTER
bool
default y
def_bool y

source "init/Kconfig"

Expand All @@ -143,20 +130,21 @@ comment "Processor type and features"
source "kernel/time/Kconfig"

config 64BIT
bool "64 bit kernel"
def_bool y
prompt "64 bit kernel"
help
Select this option if you have an IBM z/Architecture machine
and want to use the 64 bit addressing mode.

config 32BIT
bool
default y if !64BIT
def_bool y if !64BIT

config KTIME_SCALAR
def_bool 32BIT

config SMP
bool "Symmetric multi-processing support"
def_bool y
prompt "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
Expand Down Expand Up @@ -188,10 +176,10 @@ config NR_CPUS
approximately sixteen kilobytes to the kernel image.

config HOTPLUG_CPU
bool "Support for hot-pluggable CPUs"
def_bool y
prompt "Support for hot-pluggable CPUs"
depends on SMP
select HOTPLUG
default n
help
Say Y here to be able to turn CPUs off and on. CPUs
can be controlled through /sys/devices/system/cpu/cpu#.
Expand All @@ -207,22 +195,25 @@ config SCHED_MC
increased overhead in some places.

config SCHED_BOOK
bool "Book scheduler support"
def_bool y
prompt "Book scheduler support"
depends on SMP && SCHED_MC
help
Book scheduler support improves the CPU scheduler's decision making
when dealing with machines that have several books.

config MATHEMU
bool "IEEE FPU emulation"
def_bool y
prompt "IEEE FPU emulation"
depends on MARCH_G5
help
This option is required for IEEE compliant floating point arithmetic
on older ESA/390 machines. Say Y unless you know your machine doesn't
need this.

config COMPAT
bool "Kernel support for 31 bit emulation"
def_bool y
prompt "Kernel support for 31 bit emulation"
depends on 64BIT
select COMPAT_BINFMT_ELF
help
Expand All @@ -232,16 +223,14 @@ config COMPAT
executing 31 bit applications. It is safe to say "Y".

config SYSVIPC_COMPAT
bool
depends on COMPAT && SYSVIPC
default y
def_bool y if COMPAT && SYSVIPC

config AUDIT_ARCH
bool
default y
def_bool y

config S390_EXEC_PROTECT
bool "Data execute protection"
def_bool y
prompt "Data execute protection"
help
This option allows to enable a buffer overflow protection for user
space programs and it also selects the addressing mode option above.
Expand Down Expand Up @@ -301,7 +290,8 @@ config MARCH_Z196
endchoice

config PACK_STACK
bool "Pack kernel stack"
def_bool y
prompt "Pack kernel stack"
help
This option enables the compiler option -mkernel-backchain if it
is available. If the option is available the compiler supports
Expand All @@ -314,7 +304,8 @@ config PACK_STACK
Say Y if you are unsure.

config SMALL_STACK
bool "Use 8kb for kernel stack instead of 16kb"
def_bool n
prompt "Use 8kb for kernel stack instead of 16kb"
depends on PACK_STACK && 64BIT && !LOCKDEP
help
If you say Y here and the compiler supports the -mkernel-backchain
Expand All @@ -326,7 +317,8 @@ config SMALL_STACK
Say N if you are unsure.

config CHECK_STACK
bool "Detect kernel stack overflow"
def_bool y
prompt "Detect kernel stack overflow"
help
This option enables the compiler option -mstack-guard and
-mstack-size if they are available. If the compiler supports them
Expand All @@ -350,7 +342,8 @@ config STACK_GUARD
512 for 64 bit.

config WARN_STACK
bool "Emit compiler warnings for function with broken stack usage"
def_bool n
prompt "Emit compiler warnings for function with broken stack usage"
help
This option enables the compiler options -mwarn-framesize and
-mwarn-dynamicstack. If the compiler supports these options it
Expand Down Expand Up @@ -385,24 +378,24 @@ config ARCH_SPARSEMEM_DEFAULT
def_bool y

config ARCH_SELECT_MEMORY_MODEL
def_bool y
def_bool y

config ARCH_ENABLE_MEMORY_HOTPLUG
def_bool y
depends on SPARSEMEM
def_bool y if SPARSEMEM

config ARCH_ENABLE_MEMORY_HOTREMOVE
def_bool y

config ARCH_HIBERNATION_POSSIBLE
def_bool y if 64BIT
def_bool y if 64BIT

source "mm/Kconfig"

comment "I/O subsystem configuration"

config QDIO
tristate "QDIO support"
def_tristate y
prompt "QDIO support"
---help---
This driver provides the Queued Direct I/O base support for
IBM System z.
Expand All @@ -413,7 +406,8 @@ config QDIO
If unsure, say Y.

config CHSC_SCH
tristate "Support for CHSC subchannels"
def_tristate y
prompt "Support for CHSC subchannels"
help
This driver allows usage of CHSC subchannels. A CHSC subchannel
is usually present on LPAR only.
Expand All @@ -431,7 +425,8 @@ config CHSC_SCH
comment "Misc"

config IPL
bool "Builtin IPL record support"
def_bool y
prompt "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
Expand Down Expand Up @@ -463,7 +458,8 @@ config FORCE_MAX_ZONEORDER
default "9"

config PFAULT
bool "Pseudo page fault support"
def_bool y
prompt "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
Expand All @@ -475,7 +471,8 @@ config PFAULT
this option.

config SHARED_KERNEL
bool "VM shared kernel support"
def_bool y
prompt "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
Expand All @@ -486,7 +483,8 @@ config SHARED_KERNEL
doing and want to exploit this feature.

config CMM
tristate "Cooperative memory management"
def_tristate n
prompt "Cooperative memory management"
help
Select this option, if you want to enable the kernel interface
to reduce the memory size of the system. This is accomplished
Expand All @@ -498,14 +496,16 @@ config CMM
option.

config CMM_IUCV
bool "IUCV special message interface to cooperative memory management"
def_bool y
prompt "IUCV special message interface to cooperative memory management"
depends on CMM && (SMSGIUCV=y || CMM=SMSGIUCV)
help
Select this option to enable the special message interface to
the cooperative memory management.

config APPLDATA_BASE
bool "Linux - VM Monitor Stream, base infrastructure"
def_bool n
prompt "Linux - VM Monitor Stream, base infrastructure"
depends on PROC_FS
help
This provides a kernel interface for creating and updating z/VM APPLDATA
Expand All @@ -520,7 +520,8 @@ config APPLDATA_BASE
The /proc entries can also be read from, showing the current settings.

config APPLDATA_MEM
tristate "Monitor memory management statistics"
def_tristate m
prompt "Monitor memory management statistics"
depends on APPLDATA_BASE && VM_EVENT_COUNTERS
help
This provides memory management related data to the Linux - VM Monitor
Expand All @@ -536,7 +537,8 @@ config APPLDATA_MEM
appldata_mem.o.

config APPLDATA_OS
tristate "Monitor OS statistics"
def_tristate m
prompt "Monitor OS statistics"
depends on APPLDATA_BASE
help
This provides OS related data to the Linux - VM Monitor Stream, like
Expand All @@ -550,7 +552,8 @@ config APPLDATA_OS
appldata_os.o.

config APPLDATA_NET_SUM
tristate "Monitor overall network statistics"
def_tristate m
prompt "Monitor overall network statistics"
depends on APPLDATA_BASE && NET
help
This provides network related data to the Linux - VM Monitor Stream,
Expand All @@ -567,30 +570,32 @@ config APPLDATA_NET_SUM
source kernel/Kconfig.hz

config S390_HYPFS_FS
bool "s390 hypervisor file system support"
def_bool y
prompt "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"
def_bool n
prompt "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
bool "zfcpdump support"
def_bool n
prompt "zfcpdump support"
select SMP
default n
help
Select this option if you want to build an zfcpdump enabled kernel.
Refer to <file:Documentation/s390/zfcpdump.txt> for more details on this.

config S390_GUEST
bool "s390 guest support for KVM (EXPERIMENTAL)"
def_bool y
prompt "s390 guest support for KVM (EXPERIMENTAL)"
depends on 64BIT && EXPERIMENTAL
select VIRTIO
select VIRTIO_RING
Expand All @@ -602,9 +607,9 @@ bool "s390 guest support for KVM (EXPERIMENTAL)"
the default console.

config SECCOMP
bool "Enable seccomp to safely compute untrusted bytecode"
def_bool y
prompt "Enable seccomp to safely compute untrusted bytecode"
depends on PROC_FS
default y
help
This kernel feature is useful for number crunching applications
that may need to compute untrusted bytecode during their
Expand Down
6 changes: 3 additions & 3 deletions arch/s390/Kconfig.debug
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
menu "Kernel hacking"

config TRACE_IRQFLAGS_SUPPORT
bool
default y
def_bool y

source "lib/Kconfig.debug"

Expand All @@ -19,7 +18,8 @@ config STRICT_DEVMEM
If you are unsure, say Y.

config DEBUG_STRICT_USER_COPY_CHECKS
bool "Strict user copy size checks"
def_bool n
prompt "Strict user copy size checks"
---help---
Enabling this option turns a certain set of sanity checks for user
copy operations into compile time warnings.
Expand Down
Loading

0 comments on commit 6f9a3c3

Please sign in to comment.