Merge tag 's390-5.16-1' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
[sfrench/cifs-2.6.git] / arch / x86 / Kconfig
index 620fce152be9949dc2ee084f2bc10d4974ebd94e..95dd1ee01546ac04955f9297dfec9a60371aed0d 100644 (file)
@@ -61,8 +61,9 @@ config X86
        select ACPI_SYSTEM_POWER_STATES_SUPPORT if ACPI
        select ARCH_32BIT_OFF_T                 if X86_32
        select ARCH_CLOCKSOURCE_INIT
+       select ARCH_CORRECT_STACKTRACE_ON_KRETPROBE
        select ARCH_ENABLE_HUGEPAGE_MIGRATION if X86_64 && HUGETLB_PAGE && MIGRATION
-       select ARCH_ENABLE_MEMORY_HOTPLUG if X86_64 || (X86_32 && HIGHMEM)
+       select ARCH_ENABLE_MEMORY_HOTPLUG if X86_64
        select ARCH_ENABLE_MEMORY_HOTREMOVE if MEMORY_HOTPLUG
        select ARCH_ENABLE_SPLIT_PMD_PTLOCK if (PGTABLE_LEVELS > 2) && (X86_64 || X86_PAE)
        select ARCH_ENABLE_THP_MIGRATION if X86_64 && TRANSPARENT_HUGEPAGE
@@ -125,6 +126,7 @@ config X86
        select CLOCKSOURCE_VALIDATE_LAST_CYCLE
        select CLOCKSOURCE_WATCHDOG
        select DCACHE_WORD_ACCESS
+       select DYNAMIC_SIGFRAME
        select EDAC_ATOMIC_SCRUB
        select EDAC_SUPPORT
        select GENERIC_CLOCKEVENTS_BROADCAST    if X86_64 || (X86_32 && X86_LOCAL_APIC)
@@ -191,6 +193,7 @@ config X86
        select HAVE_DYNAMIC_FTRACE_WITH_ARGS    if X86_64
        select HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS
        select HAVE_SAMPLE_FTRACE_DIRECT        if X86_64
+       select HAVE_SAMPLE_FTRACE_MULTI_DIRECT  if X86_64
        select HAVE_EBPF_JIT
        select HAVE_EFFICIENT_UNALIGNED_ACCESS
        select HAVE_EISA
@@ -198,7 +201,7 @@ config X86
        select HAVE_FAST_GUP
        select HAVE_FENTRY                      if X86_64 || DYNAMIC_FTRACE
        select HAVE_FTRACE_MCOUNT_RECORD
-       select HAVE_FUNCTION_GRAPH_TRACER
+       select HAVE_FUNCTION_GRAPH_TRACER       if X86_32 || (X86_64 && DYNAMIC_FTRACE)
        select HAVE_FUNCTION_TRACER
        select HAVE_GCC_PLUGINS
        select HAVE_HW_BREAKPOINT
@@ -611,9 +614,7 @@ config X86_INTEL_MID
        depends on X86_IO_APIC
        select I2C
        select DW_APB_TIMER
-       select APB_TIMER
        select INTEL_SCU_PCI
-       select MFD_INTEL_MSIC
        help
          Select to build a kernel capable of supporting Intel MID (Mobile
          Internet Device) platform systems which do not have the PCI legacy
@@ -1002,6 +1003,17 @@ config NR_CPUS
          This is purely to save memory: each supported CPU adds about 8KB
          to the kernel image.
 
+config SCHED_CLUSTER
+       bool "Cluster scheduler support"
+       depends on SMP
+       default y
+       help
+         Cluster scheduler support improves the CPU scheduler's decision
+         making when dealing with machines that have clusters of CPUs.
+         Cluster usually means a couple of CPUs which are placed closely
+         by sharing mid-level caches, last-level cache tags or internal
+         busses.
+
 config SCHED_SMT
        def_bool y if SMP
 
@@ -1257,7 +1269,8 @@ config TOSHIBA
 
 config I8K
        tristate "Dell i8k legacy laptop support"
-       select HWMON
+       depends on HWMON
+       depends on PROC_FS
        select SENSORS_DELL_SMM
        help
          This option enables legacy /proc/i8k userspace interface in hwmon
@@ -1406,7 +1419,7 @@ config HIGHMEM4G
 
 config HIGHMEM64G
        bool "64GB"
-       depends on !M486SX && !M486 && !M586 && !M586TSC && !M586MMX && !MGEODE_LX && !MGEODEGX1 && !MCYRIXIII && !MELAN && !MWINCHIPC6 && !WINCHIP3D && !MK6
+       depends on !M486SX && !M486 && !M586 && !M586TSC && !M586MMX && !MGEODE_LX && !MGEODEGX1 && !MCYRIXIII && !MELAN && !MWINCHIPC6 && !MWINCHIP3D && !MK6
        select X86_PAE
        help
          Select this if you have a 32-bit processor and more than 4
@@ -1519,6 +1532,7 @@ config AMD_MEM_ENCRYPT
        select ARCH_HAS_FORCE_DMA_UNENCRYPTED
        select INSTRUCTION_DECODER
        select ARCH_HAS_RESTRICTED_VIRTIO_MEMORY_ACCESS
+       select ARCH_HAS_CC_PLATFORM
        help
          Say yes to enable support for the encryption of system memory.
          This requires an AMD processor that supports Secure Memory
@@ -1526,7 +1540,6 @@ config AMD_MEM_ENCRYPT
 
 config AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT
        bool "Activate AMD Secure Memory Encryption (SME) by default"
-       default y
        depends on AMD_MEM_ENCRYPT
        help
          Say yes to have system memory encrypted by default if running on
@@ -1616,7 +1629,7 @@ config ARCH_SELECT_MEMORY_MODEL
 
 config ARCH_MEMORY_PROBE
        bool "Enable sysfs memory/probe interface"
-       depends on X86_64 && MEMORY_HOTPLUG
+       depends on MEMORY_HOTPLUG
        help
          This option enables a sysfs memory/probe interface for testing.
          See Documentation/admin-guide/mm/memory-hotplug.rst for more information.
@@ -2390,13 +2403,29 @@ config MODIFY_LDT_SYSCALL
 
          Saying 'N' here may make sense for embedded or server kernels.
 
+config STRICT_SIGALTSTACK_SIZE
+       bool "Enforce strict size checking for sigaltstack"
+       depends on DYNAMIC_SIGFRAME
+       help
+         For historical reasons MINSIGSTKSZ is a constant which became
+         already too small with AVX512 support. Add a mechanism to
+         enforce strict checking of the sigaltstack size against the
+         real size of the FPU frame. This option enables the check
+         by default. It can also be controlled via the kernel command
+         line option 'strict_sas_size' independent of this config
+         switch. Enabling it might break existing applications which
+         allocate a too small sigaltstack but 'work' because they
+         never get a signal delivered.
+
+         Say 'N' unless you want to really enforce this check.
+
 source "kernel/livepatch/Kconfig"
 
 endmenu
 
 config ARCH_HAS_ADD_PAGES
        def_bool y
-       depends on X86_64 && ARCH_ENABLE_MEMORY_HOTPLUG
+       depends on ARCH_ENABLE_MEMORY_HOTPLUG
 
 config ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE
        def_bool y
@@ -2833,8 +2862,6 @@ config HAVE_ATOMIC_IOMAP
        def_bool y
        depends on X86_32
 
-source "drivers/firmware/Kconfig"
-
 source "arch/x86/kvm/Kconfig"
 
 source "arch/x86/Kconfig.assembler"