Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[cascardo/linux.git] / arch / x86 / Kconfig
index ded8a67..ba397bd 100644 (file)
@@ -24,6 +24,7 @@ config X86
        select ARCH_MIGHT_HAVE_ACPI_PDC if ACPI
        select ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS
        select ARCH_HAS_FAST_MULTIPLIER
+       select ARCH_HAS_GCOV_PROFILE_ALL
        select ARCH_MIGHT_HAVE_PC_PARPORT
        select ARCH_MIGHT_HAVE_PC_SERIO
        select HAVE_AOUT if X86_32
@@ -144,7 +145,7 @@ config INSTRUCTION_DECODER
 
 config PERF_EVENTS_INTEL_UNCORE
        def_bool y
-       depends on PERF_EVENTS && SUP_SUP_INTEL && PCI
+       depends on PERF_EVENTS && CPU_SUP_INTEL && PCI
 
 config OUTPUT_FORMAT
        string
@@ -882,11 +883,11 @@ config X86_UP_IOAPIC
 config X86_LOCAL_APIC
        def_bool y
        depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_APIC || PCI_MSI
+       select GENERIC_IRQ_LEGACY_ALLOC_HWIRQ
 
 config X86_IO_APIC
-       def_bool y
-       depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_IOAPIC || PCI_MSI
-       select GENERIC_IRQ_LEGACY_ALLOC_HWIRQ
+       def_bool X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_IOAPIC
+       depends on X86_LOCAL_APIC
        select IRQ_DOMAIN
 
 config X86_REROUTE_FOR_BROKEN_BOOT_IRQS
@@ -988,6 +989,24 @@ config X86_ESPFIX64
        def_bool y
        depends on X86_16BIT && X86_64
 
+config X86_VSYSCALL_EMULATION
+       bool "Enable vsyscall emulation" if EXPERT
+       default y
+       depends on X86_64
+       ---help---
+        This enables emulation of the legacy vsyscall page.  Disabling
+        it is roughly equivalent to booting with vsyscall=none, except
+        that it will also disable the helpful warning if a program
+        tries to use a vsyscall.  With this option set to N, offending
+        programs will just segfault, citing addresses of the form
+        0xffffffffff600?00.
+
+        This option is required by many programs built before 2013, and
+        care should be used even with newer programs if set to N.
+
+        Disabling this option saves about 7K of kernel size and
+        possibly 4K of additional runtime pagetable memory.
+
 config TOSHIBA
        tristate "Toshiba Laptop support"
        depends on X86_32
@@ -1571,6 +1590,32 @@ config X86_SMAP
 
          If unsure, say Y.
 
+config X86_INTEL_MPX
+       prompt "Intel MPX (Memory Protection Extensions)"
+       def_bool n
+       depends on CPU_SUP_INTEL
+       ---help---
+         MPX provides hardware features that can be used in
+         conjunction with compiler-instrumented code to check
+         memory references.  It is designed to detect buffer
+         overflow or underflow bugs.
+
+         This option enables running applications which are
+         instrumented or otherwise use MPX.  It does not use MPX
+         itself inside the kernel or to protect the kernel
+         against bad memory references.
+
+         Enabling this option will make the kernel larger:
+         ~8k of kernel text and 36 bytes of data on a 64-bit
+         defconfig.  It adds a long to the 'mm_struct' which
+         will increase the kernel memory overhead of each
+         process and adds some branches to paths used during
+         exec() and munmap().
+
+         For details, see Documentation/x86/intel_mpx.txt
+
+         If unsure, say N.
+
 config EFI
        bool "EFI runtime service support"
        depends on ACPI