x86/kconfig: Move 64-bit only arch Kconfig selects to 'config X86_64'
authorIngo Molnar <mingo@kernel.org>
Tue, 15 Nov 2016 09:11:57 +0000 (10:11 +0100)
committerIngo Molnar <mingo@kernel.org>
Tue, 15 Nov 2016 09:34:02 +0000 (10:34 +0100)
These are easier to read when they come next to the X86_64 config.

Note that all remaining 'if X86_64' config options in the generic
section are in principle suitable for activation on 32-bit, but have
not been ported yet.

Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/Kconfig

index d3dc47d..8feebec 100644 (file)
@@ -21,8 +21,20 @@ config X86_32
 config X86_64
        def_bool y
        depends on 64BIT
+       # Options that are inherently 64-bit kernel only:
+       select ARCH_HAS_GIGANTIC_PAGE
+       select ARCH_SUPPORTS_INT128
+       select ARCH_USE_CMPXCHG_LOCKREF
+       select HAVE_ARCH_SOFT_DIRTY
+       select MODULES_USE_ELF_RELA
+       select X86_DEV_DMA_OPS
 
-### Arch settings
+#
+# Arch settings
+#
+# ( Note that options that are marked 'if X86_64' could in principle be
+#   ported to 32-bit as well. )
+#
 config X86
        def_bool y
        select ACPI_LEGACY_TABLES_LOOKUP        if ACPI
@@ -35,7 +47,6 @@ config X86
        select ARCH_HAS_ELF_RANDOMIZE
        select ARCH_HAS_FAST_MULTIPLIER
        select ARCH_HAS_GCOV_PROFILE_ALL
-       select ARCH_HAS_GIGANTIC_PAGE           if X86_64
        select ARCH_HAS_KCOV                    if X86_64
        select ARCH_HAS_PMEM_API                if X86_64
        select ARCH_HAS_MMIO_FLUSH
@@ -47,10 +58,8 @@ config X86
        select ARCH_MIGHT_HAVE_PC_SERIO
        select ARCH_SUPPORTS_ATOMIC_RMW
        select ARCH_SUPPORTS_DEFERRED_STRUCT_PAGE_INIT
-       select ARCH_SUPPORTS_INT128             if X86_64
        select ARCH_SUPPORTS_NUMA_BALANCING     if X86_64
        select ARCH_USE_BUILTIN_BSWAP
-       select ARCH_USE_CMPXCHG_LOCKREF         if X86_64
        select ARCH_USE_QUEUED_RWLOCKS
        select ARCH_USE_QUEUED_SPINLOCKS
        select ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH if SMP
@@ -92,7 +101,6 @@ config X86
        select HAVE_ARCH_MMAP_RND_BITS          if MMU
        select HAVE_ARCH_MMAP_RND_COMPAT_BITS   if MMU && COMPAT
        select HAVE_ARCH_SECCOMP_FILTER
-       select HAVE_ARCH_SOFT_DIRTY             if X86_64
        select HAVE_ARCH_TRACEHOOK
        select HAVE_ARCH_TRANSPARENT_HUGEPAGE
        select HAVE_ARCH_WITHIN_STACK_FRAMES
@@ -150,7 +158,6 @@ config X86
        select HAVE_UNSTABLE_SCHED_CLOCK
        select HAVE_USER_RETURN_NOTIFIER
        select IRQ_FORCED_THREADING
-       select MODULES_USE_ELF_RELA             if X86_64
        select OLD_SIGSUSPEND3                  if X86_32 || IA32_EMULATION
        select PERF_EVENTS
        select RTC_LIB
@@ -161,7 +168,6 @@ config X86
        select THREAD_INFO_IN_TASK
        select USER_STACKTRACE_SUPPORT
        select VIRT_TO_BUS
-       select X86_DEV_DMA_OPS                  if X86_64
        select X86_FEATURE_NAMES                if PROC_FS
        select HAVE_STACK_VALIDATION            if X86_64
        select ARCH_USES_HIGH_VMA_FLAGS         if X86_INTEL_MEMORY_PROTECTION_KEYS