kconfig: include kernel/Kconfig.preempt from init/Kconfig
authorChristoph Hellwig <hch@lst.de>
Tue, 31 Jul 2018 11:39:32 +0000 (13:39 +0200)
committerMasahiro Yamada <yamada.masahiro@socionext.com>
Wed, 1 Aug 2018 23:06:54 +0000 (08:06 +0900)
Almost all architectures include it.  Add a ARCH_NO_PREEMPT symbol to
disable preempt support for alpha, hexagon, non-coldfire m68k and
user mode Linux.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
28 files changed:
arch/Kconfig
arch/alpha/Kconfig
arch/arc/Kconfig
arch/arm/Kconfig
arch/arm64/Kconfig
arch/c6x/Kconfig
arch/h8300/Kconfig
arch/hexagon/Kconfig
arch/ia64/Kconfig
arch/m68k/Kconfig
arch/microblaze/Kconfig
arch/mips/Kconfig
arch/nds32/Kconfig
arch/nios2/Kconfig
arch/openrisc/Kconfig
arch/parisc/Kconfig
arch/powerpc/Kconfig
arch/riscv/Kconfig
arch/s390/Kconfig
arch/sh/Kconfig
arch/sparc/Kconfig
arch/um/Kconfig
arch/unicore32/Kconfig
arch/x86/Kconfig
arch/xtensa/Kconfig
init/Kconfig
kernel/Kconfig.preempt
lib/Kconfig.debug

index 09a561a70168f77cbeda9c8e8535b4dac6135604..cddd0faae4cb7864bd219dba102f2cb396761b03 100644 (file)
@@ -881,6 +881,9 @@ config COMPAT_32BIT_TIME
 config ARCH_NO_COHERENT_DMA_MMAP
        bool
 
+config ARCH_NO_PREEMPT
+       bool
+
 config CPU_NO_EFFICIENT_FFS
        def_bool n
 
index e4334f017f8e3fd620f11bb7a91c398983b16dd9..5b4f8836345381017ff54770f44180115a81c7e4 100644 (file)
@@ -4,6 +4,7 @@ config ALPHA
        default y
        select ARCH_MIGHT_HAVE_PC_PARPORT
        select ARCH_MIGHT_HAVE_PC_SERIO
+       select ARCH_NO_PREEMPT
        select ARCH_USE_CMPXCHG_LOCKREF
        select HAVE_AOUT
        select HAVE_IDE
index 5aab069eba1731c1b5c369026c3284cd498fa430..639ab1bed83550a0bc92e5929eb7284b2889425f 100644 (file)
@@ -545,8 +545,6 @@ config ARC_BUILTIN_DTB_NAME
          Set the name of the DTB to embed in the vmlinux binary
          Leaving it blank selects the minimal "skeleton" dtb
 
-source "kernel/Kconfig.preempt"
-
 endmenu         # "ARC Architecture Configuration"
 
 config FORCE_MAX_ZONEORDER
index 9aaa23c2537478f231e06d283538b6c530b3608f..1b1c215190395a163196f4b6d75d434b57f1fe01 100644 (file)
@@ -1481,8 +1481,6 @@ config ARCH_NR_GPIO
 
          If unsure, leave the default value.
 
-source kernel/Kconfig.preempt
-
 config HZ_FIXED
        int
        default 200 if ARCH_EBSA110
index 07d457ec417a64cb15038725e1c7ff427ed8b8dc..daf59d363dd33020252a367703e5dd214e65b4ef 100644 (file)
@@ -752,7 +752,6 @@ config HOLES_IN_ZONE
        def_bool y
        depends on NUMA
 
-source kernel/Kconfig.preempt
 source kernel/Kconfig.hz
 
 config ARCH_SUPPORTS_DEBUG_PAGEALLOC
index 904b3375331e1b93215996b8f06f79fd7c5838e1..a641b0bf1611531f9fb8f8b54127a9b683874aad 100644 (file)
@@ -110,8 +110,6 @@ config KERNEL_RAM_BASE_ADDRESS
        default 0xe0000000 if SOC_TMS320C6472
        default 0x80000000
 
-source "kernel/Kconfig.preempt"
-
 source "kernel/Kconfig.hz"
 
 endmenu
index c16e7cf732f713f99947d67bd895357aff7993b5..5e89d40be8cd9764bb3c8e80dc7cbcfa3f2ce959 100644 (file)
@@ -49,9 +49,3 @@ config NR_CPUS
        default 1
 
 source "arch/h8300/Kconfig.cpu"
-
-menu "Kernel Features"
-
-source "kernel/Kconfig.preempt"
-
-endmenu
index fcdb6d9fcecce9e515fbff1618a0d1683ecb40a9..89a4b22f34d9bdf3de94236bbb0fd5b1447fb7af 100644 (file)
@@ -4,6 +4,7 @@ comment "Linux Kernel Configuration for Hexagon"
 
 config HEXAGON
        def_bool y
+       select ARCH_NO_PREEMPT
        select HAVE_OPROFILE
        # Other pending projects/to-do items.
        # select HAVE_REGS_AND_STACK_ACCESS_API
index 34a8d24cffea23931da6323ca910adb36c11bc62..86bd377bc7c0a86897c73b65437185c729342553 100644 (file)
@@ -364,8 +364,6 @@ config FORCE_CPEI_RETARGET
        This option it useful to enable this feature on older BIOS's as well.
        You can also enable this by using boot command line option force_cpei=1.
 
-source "kernel/Kconfig.preempt"
-
 config ARCH_SELECT_MEMORY_MODEL
        def_bool y
 
index cf41ad45513f270e5918fd2e6b52ac4ac986a9be..3e47f8df6504b6ad9b53eaab29ce8521508cffd6 100644 (file)
@@ -4,6 +4,7 @@ config M68K
        default y
        select ARCH_MIGHT_HAVE_PC_PARPORT if ISA
        select ARCH_NO_COHERENT_DMA_MMAP if !MMU
+       select ARCH_NO_PREEMPT if !COLDFIRE
        select HAVE_IDE
        select HAVE_AOUT if MMU
        select HAVE_DEBUG_BUGVERBOSE
@@ -129,10 +130,6 @@ endmenu
 
 menu "Kernel Features"
 
-if COLDFIRE
-source "kernel/Kconfig.preempt"
-endif
-
 endmenu
 
 if !MMU
index f4492e9478fee660adb2add8bccf437625fd0f8d..6163a39ddeb6f827fbe6991df616dd2effb8e9a0 100644 (file)
@@ -87,8 +87,6 @@ source "arch/microblaze/Kconfig.platform"
 
 menu "Processor type and features"
 
-source "kernel/Kconfig.preempt"
-
 source "kernel/Kconfig.hz"
 
 config MMU
index ab02824c3976d16b6a028187e089bd89b3144cf9..06a633eb9777ad6e7384a37a625d333cb87fca85 100644 (file)
@@ -2818,8 +2818,6 @@ config HZ
 config SCHED_HRTICK
        def_bool HIGH_RES_TIMERS
 
-source "kernel/Kconfig.preempt"
-
 config KEXEC
        bool "Kexec system call"
        select KEXEC_CORE
index c03d0e5a591b6875674ec641b20850c81e71759e..541f16adfb065ba101e9e8d682c543a1cbe64fc9 100644 (file)
@@ -88,6 +88,5 @@ config NDS32_BUILTIN_DTB
 endmenu
 
 menu "Kernel Features"
-source "kernel/Kconfig.preempt"
 source "kernel/Kconfig.hz"
 endmenu
index 22d19febcc92482547b12ef6c50315b38db9e84b..cbe1844b065739395b0c765ecd96640d3299d0cc 100644 (file)
@@ -47,8 +47,6 @@ config TRACE_IRQFLAGS_SUPPORT
 
 menu "Kernel features"
 
-source "kernel/Kconfig.preempt"
-
 source "kernel/Kconfig.hz"
 
 config FORCE_MAX_ZONEORDER
index c52cecd94d629e2b0ffc7b4d04eaca79a34e7ae4..42e3a0f2afab401e7c12c0a3cc7eb568e4869e2e 100644 (file)
@@ -143,7 +143,6 @@ config SMP
          If you don't know what to do here, say N.
 
 source kernel/Kconfig.hz
-source kernel/Kconfig.preempt
 
 config OPENRISC_NO_SPR_SR_DSX
        bool "use SPR_SR_DSX software emulation" if OR1K_1200
index d1dd56ea297bc65b38f52f969bb7e93febc58ee3..89496aa318daba90f98fbb56be7c2edc1df4340c 100644 (file)
@@ -323,7 +323,6 @@ config NODES_SHIFT
        default "3"
        depends on NEED_MULTIPLE_NODES
 
-source "kernel/Kconfig.preempt"
 source "kernel/Kconfig.hz"
 
 config COMPAT
index c55e61302d57b0610b3595d786a04f7f006b6168..1c10ff0406f28250cf3dcf3f5ef51eca84717cd1 100644 (file)
@@ -393,7 +393,6 @@ config HIGHMEM
        depends on PPC32
 
 source kernel/Kconfig.hz
-source kernel/Kconfig.preempt
 
 config HUGETLB_PAGE_SIZE_VARIABLE
        bool
index 73c0e16793faa55f75690a28dd9f52bc13ef48ec..a344980287a519eec038d553c8ae4d0f82add8e3 100644 (file)
@@ -212,8 +212,6 @@ endmenu
 
 menu "Kernel type"
 
-source "kernel/Kconfig.preempt"
-
 source "kernel/Kconfig.hz"
 
 endmenu
index ac8925766d0a91a2580dd93a38b9eb554154b889..8441bd8f7d70f741a5b51124d4529d8b2e0cc223 100644 (file)
@@ -511,8 +511,6 @@ config SCHED_TOPOLOGY
          making when dealing with machines that have multi-threading,
          multiple cores or multiple books.
 
-source kernel/Kconfig.preempt
-
 source kernel/Kconfig.hz
 
 config KEXEC
index c8460330eff752612bb8ab6a961b818e8d135e2a..993f61a5961df19c1fef15021220ccd06d5b7bc3 100644 (file)
@@ -709,8 +709,6 @@ config HOTPLUG_CPU
          Say Y here to experiment with turning CPUs off and on.  CPUs
          can be controlled through /sys/devices/system/cpu.
 
-source "kernel/Kconfig.preempt"
-
 config GUSA
        def_bool y
        depends on !SMP && SUPERH32
index 622695e8fa447e5712b4f482568cdfa7b65b6917..2d58c26bff9a72f9c2d98ca3757eef5faa5356c9 100644 (file)
@@ -349,8 +349,6 @@ config SCHED_MC
          making when dealing with multi-core CPU chips at a cost of slightly
          increased overhead in some places. If unsure say N here.
 
-source "kernel/Kconfig.preempt"
-
 config CMDLINE_BOOL
        bool "Default bootloader kernel arguments"
        depends on SPARC64
index 3022d1bf9bf953e1fc159d18471291105f0a246e..6b9938919f0bab07e46fefbe97b45c4cab663a8c 100644 (file)
@@ -6,6 +6,7 @@ config UML
        bool
        default y
        select ARCH_HAS_KCOV
+       select ARCH_NO_PREEMPT
        select HAVE_ARCH_AUDITSYSCALL
        select HAVE_ARCH_SECCOMP_FILTER
        select HAVE_UID16
index 6bfaa4a910e13501cce081d4564f0c54da227e0b..60eae744d8fd0112d39dc0bbbe13a48e30790726 100644 (file)
@@ -135,8 +135,6 @@ endmenu
 
 menu "Kernel Features"
 
-source "kernel/Kconfig.preempt"
-
 source "kernel/Kconfig.hz"
 
 config LEDS
index 41d28b430fef53ba25257151dfd478f665d5fc69..98fd04cfa99578f932840a001c0ccef00a651a73 100644 (file)
@@ -1039,8 +1039,6 @@ config SCHED_MC_PRIO
 
          If unsure say Y here.
 
-source "kernel/Kconfig.preempt"
-
 config UP_LATE_INIT
        def_bool y
        depends on !SMP && X86_LOCAL_APIC
index aae0e1800be73eb7a7b2287c7d37187980857066..801491e9889037d77b620763c3aa254c6455bb89 100644 (file)
@@ -173,8 +173,6 @@ config XTENSA_UNALIGNED_USER
 
          Say Y here to enable unaligned memory access in user space.
 
-source "kernel/Kconfig.preempt"
-
 config HAVE_SMP
        bool "System Supports SMP (MX)"
        depends on XTENSA_VARIANT_CUSTOM
index 283f6bc796b14e7c3d7d609b04d768337cd15bf1..29bbad9338d60bc5b06267c939a7ee8ae15582c2 100644 (file)
@@ -326,6 +326,7 @@ config AUDIT_TREE
 
 source "kernel/irq/Kconfig"
 source "kernel/time/Kconfig"
+source "kernel/Kconfig.preempt"
 
 menu "CPU/Task time and stats accounting"
 
index 3f9c97419f02a69dd180f08b963976649ac2de05..cd1655122ec0bb8b73def7adbb8d8f8f3c7d0cb8 100644 (file)
@@ -18,6 +18,7 @@ config PREEMPT_NONE
 
 config PREEMPT_VOLUNTARY
        bool "Voluntary Kernel Preemption (Desktop)"
+       depends on !ARCH_NO_PREEMPT
        help
          This option reduces the latency of the kernel by adding more
          "explicit preemption points" to the kernel code. These new
@@ -35,6 +36,7 @@ config PREEMPT_VOLUNTARY
 
 config PREEMPT
        bool "Preemptible Kernel (Low-Latency Desktop)"
+       depends on !ARCH_NO_PREEMPT
        select PREEMPT_COUNT
        select UNINLINE_SPIN_UNLOCK if !ARCH_INLINE_SPIN_UNLOCK
        help
index 26d3ff7e3cf482935cd5dfef0b8febae424ada63..373ce9fecd7eb59b2237f1c1342fe34c6bc2f01f 100644 (file)
@@ -1195,6 +1195,7 @@ config DEBUG_ATOMIC_SLEEP
        bool "Sleep inside atomic section checking"
        select PREEMPT_COUNT
        depends on DEBUG_KERNEL
+       depends on !ARCH_NO_PREEMPT
        help
          If you say Y here, various routines which may sleep will become very
          noisy if they are called inside atomic sections: when a spinlock is