]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - arch/x86/Kconfig
Merge tag 'kvm-3.7-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm
[karo-tx-linux.git] / arch / x86 / Kconfig
index 488ba8da8fef8068c3809d9747b068f1341f346d..b72777ff32a9439ad401779b3bdce873f0d0b744 100644 (file)
@@ -7,11 +7,13 @@ config 64BIT
          Say no to build a 32-bit kernel - formerly known as i386
 
 config X86_32
-       def_bool !64BIT
+       def_bool y
+       depends on !64BIT
        select CLKSRC_I8253
 
 config X86_64
-       def_bool 64BIT
+       def_bool y
+       depends on 64BIT
        select X86_DEV_DMA_OPS
 
 ### Arch settings
@@ -104,7 +106,8 @@ config X86
        select HAVE_IRQ_TIME_ACCOUNTING
 
 config INSTRUCTION_DECODER
-       def_bool (KPROBES || PERF_EVENTS || UPROBES)
+       def_bool y
+       depends on KPROBES || PERF_EVENTS || UPROBES
 
 config OUTPUT_FORMAT
        string
@@ -132,13 +135,15 @@ config SBUS
        bool
 
 config NEED_DMA_MAP_STATE
-       def_bool (X86_64 || INTEL_IOMMU || DMA_API_DEBUG)
+       def_bool y
+       depends on X86_64 || INTEL_IOMMU || DMA_API_DEBUG
 
 config NEED_SG_DMA_LENGTH
        def_bool y
 
 config GENERIC_ISA_DMA
-       def_bool ISA_DMA_API
+       def_bool y
+       depends on ISA_DMA_API
 
 config GENERIC_BUG
        def_bool y
@@ -155,13 +160,16 @@ config GENERIC_GPIO
        bool
 
 config ARCH_MAY_HAVE_PC_FDC
-       def_bool ISA_DMA_API
+       def_bool y
+       depends on ISA_DMA_API
 
 config RWSEM_GENERIC_SPINLOCK
-       def_bool !X86_XADD
+       def_bool y
+       depends on !X86_XADD
 
 config RWSEM_XCHGADD_ALGORITHM
-       def_bool X86_XADD
+       def_bool y
+       depends on X86_XADD
 
 config GENERIC_CALIBRATE_DELAY
        def_bool y
@@ -578,23 +586,18 @@ config PARAVIRT_TIME_ACCOUNTING
 
 source "arch/x86/xen/Kconfig"
 
-config KVM_CLOCK
-       bool "KVM paravirtualized clock"
-       select PARAVIRT
-       select PARAVIRT_CLOCK
-       ---help---
-         Turning on this option will allow you to run a paravirtualized clock
-         when running over the KVM hypervisor. Instead of relying on a PIT
-         (or probably other) emulation by the underlying device model, the host
-         provides the guest with timing infrastructure such as time of day, and
-         system time
-
 config KVM_GUEST
-       bool "KVM Guest support"
+       bool "KVM Guest support (including kvmclock)"
        select PARAVIRT
+       select PARAVIRT
+       select PARAVIRT_CLOCK
+       default y if PARAVIRT_GUEST
        ---help---
          This option enables various optimizations for running under the KVM
-         hypervisor.
+         hypervisor. It includes a paravirtualized clock, so that instead
+         of relying on a PIT (or probably other) emulation by the
+         underlying device model, the host provides the guest with
+         timing infrastructure such as time of day, and system time
 
 source "arch/x86/lguest/Kconfig"
 
@@ -757,7 +760,8 @@ config SWIOTLB
          If unsure, say Y.
 
 config IOMMU_HELPER
-       def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB || AMD_IOMMU)
+       def_bool y
+       depends on CALGARY_IOMMU || GART_IOMMU || SWIOTLB || AMD_IOMMU
 
 config MAXSMP
        bool "Enable Maximum number of SMP Processors and NUMA Nodes"
@@ -865,6 +869,7 @@ config X86_REROUTE_FOR_BROKEN_BOOT_IRQS
 
 config X86_MCE
        bool "Machine Check / overheating reporting"
+       default y
        ---help---
          Machine Check support allows the processor to notify the
          kernel if it detects a problem (e.g. overheating, data corruption).
@@ -976,25 +981,25 @@ config X86_REBOOTFIXUPS
          Say N otherwise.
 
 config MICROCODE
-       tristate "/dev/cpu/microcode - microcode support"
+       tristate "CPU microcode loading support"
        select FW_LOADER
        ---help---
+
          If you say Y here, you will be able to update the microcode on
          certain Intel and AMD processors. The Intel support is for the
-         IA32 family, e.g. Pentium Pro, Pentium II, Pentium III,
-         Pentium 4, Xeon etc. The AMD support is for family 0x10 and
-         0x11 processors, e.g. Opteron, Phenom and Turion 64 Ultra.
-         You will obviously need the actual microcode binary data itself
-         which is not shipped with the Linux kernel.
+         IA32 family, e.g. Pentium Pro, Pentium II, Pentium III, Pentium 4,
+         Xeon etc. The AMD support is for families 0x10 and later. You will
+         obviously need the actual microcode binary data itself which is not
+         shipped with the Linux kernel.
 
          This option selects the general module only, you need to select
          at least one vendor specific module as well.
 
-         To compile this driver as a module, choose M here: the
-         module will be called microcode.
+         To compile this driver as a module, choose M here: the module
+         will be called microcode.
 
 config MICROCODE_INTEL
-       bool "Intel microcode patch loading support"
+       bool "Intel microcode loading support"
        depends on MICROCODE
        default MICROCODE
        select FW_LOADER
@@ -1007,7 +1012,7 @@ config MICROCODE_INTEL
          <http://www.urbanmyth.org/microcode/>.
 
 config MICROCODE_AMD
-       bool "AMD microcode patch loading support"
+       bool "AMD microcode loading support"
        depends on MICROCODE
        select FW_LOADER
        ---help---
@@ -1153,10 +1158,12 @@ config X86_PAE
          consumes more pagetable space per process.
 
 config ARCH_PHYS_ADDR_T_64BIT
-       def_bool X86_64 || X86_PAE
+       def_bool y
+       depends on X86_64 || X86_PAE
 
 config ARCH_DMA_ADDR_T_64BIT
-       def_bool X86_64 || HIGHMEM64G
+       def_bool y
+       depends on X86_64 || HIGHMEM64G
 
 config DIRECT_GBPAGES
        bool "Enable 1GB pages for kernel pagetables" if EXPERT
@@ -1279,8 +1286,8 @@ config ARCH_SELECT_MEMORY_MODEL
        depends on ARCH_SPARSEMEM_ENABLE
 
 config ARCH_MEMORY_PROBE
-       def_bool X86_64
-       depends on MEMORY_HOTPLUG
+       def_bool y
+       depends on X86_64 && MEMORY_HOTPLUG
 
 config ARCH_PROC_KCORE_TEXT
        def_bool y
@@ -1481,6 +1488,17 @@ config ARCH_RANDOM
          If supported, this is a high bandwidth, cryptographically
          secure hardware random number generator.
 
+config X86_SMAP
+       def_bool y
+       prompt "Supervisor Mode Access Prevention" if EXPERT
+       ---help---
+         Supervisor Mode Access Prevention (SMAP) is a security
+         feature in newer Intel processors.  There is a small
+         performance cost if this enabled and turned on; there is
+         also a small increase in the kernel size if this is enabled.
+
+         If unsure, say Y.
+
 config EFI
        bool "EFI runtime service support"
        depends on ACPI
@@ -1969,7 +1987,6 @@ config PCI_MMCONFIG
 
 config PCI_CNB20LE_QUIRK
        bool "Read CNB20LE Host Bridge Windows" if EXPERT
-       default n
        depends on PCI && EXPERIMENTAL
        help
          Read the PCI windows out of the CNB20LE host bridge. This allows
@@ -2180,18 +2197,18 @@ config COMPAT
        depends on IA32_EMULATION || X86_X32
        select ARCH_WANT_OLD_COMPAT_IPC
 
+if COMPAT
 config COMPAT_FOR_U64_ALIGNMENT
-       def_bool COMPAT
-       depends on X86_64
+       def_bool y
 
 config SYSVIPC_COMPAT
        def_bool y
-       depends on COMPAT && SYSVIPC
+       depends on SYSVIPC
 
 config KEYS_COMPAT
-       bool
-       depends on COMPAT && KEYS
-       default y
+       def_bool y
+       depends on KEYS
+endif
 
 endmenu