1
0
Fork 0

kconfig: include kernel/Kconfig.preempt from init/Kconfig

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>
hifive-unleashed-5.1
Christoph Hellwig 2018-07-31 13:39:32 +02:00 committed by Masahiro Yamada
parent 06ec64b84c
commit 87a4c37599
28 changed files with 11 additions and 43 deletions

View File

@ -881,6 +881,9 @@ config COMPAT_32BIT_TIME
config ARCH_NO_COHERENT_DMA_MMAP config ARCH_NO_COHERENT_DMA_MMAP
bool bool
config ARCH_NO_PREEMPT
bool
config CPU_NO_EFFICIENT_FFS config CPU_NO_EFFICIENT_FFS
def_bool n def_bool n

View File

@ -4,6 +4,7 @@ config ALPHA
default y default y
select ARCH_MIGHT_HAVE_PC_PARPORT select ARCH_MIGHT_HAVE_PC_PARPORT
select ARCH_MIGHT_HAVE_PC_SERIO select ARCH_MIGHT_HAVE_PC_SERIO
select ARCH_NO_PREEMPT
select ARCH_USE_CMPXCHG_LOCKREF select ARCH_USE_CMPXCHG_LOCKREF
select HAVE_AOUT select HAVE_AOUT
select HAVE_IDE select HAVE_IDE

View File

@ -545,8 +545,6 @@ config ARC_BUILTIN_DTB_NAME
Set the name of the DTB to embed in the vmlinux binary Set the name of the DTB to embed in the vmlinux binary
Leaving it blank selects the minimal "skeleton" dtb Leaving it blank selects the minimal "skeleton" dtb
source "kernel/Kconfig.preempt"
endmenu # "ARC Architecture Configuration" endmenu # "ARC Architecture Configuration"
config FORCE_MAX_ZONEORDER config FORCE_MAX_ZONEORDER

View File

@ -1481,8 +1481,6 @@ config ARCH_NR_GPIO
If unsure, leave the default value. If unsure, leave the default value.
source kernel/Kconfig.preempt
config HZ_FIXED config HZ_FIXED
int int
default 200 if ARCH_EBSA110 default 200 if ARCH_EBSA110

View File

@ -752,7 +752,6 @@ config HOLES_IN_ZONE
def_bool y def_bool y
depends on NUMA depends on NUMA
source kernel/Kconfig.preempt
source kernel/Kconfig.hz source kernel/Kconfig.hz
config ARCH_SUPPORTS_DEBUG_PAGEALLOC config ARCH_SUPPORTS_DEBUG_PAGEALLOC

View File

@ -110,8 +110,6 @@ config KERNEL_RAM_BASE_ADDRESS
default 0xe0000000 if SOC_TMS320C6472 default 0xe0000000 if SOC_TMS320C6472
default 0x80000000 default 0x80000000
source "kernel/Kconfig.preempt"
source "kernel/Kconfig.hz" source "kernel/Kconfig.hz"
endmenu endmenu

View File

@ -49,9 +49,3 @@ config NR_CPUS
default 1 default 1
source "arch/h8300/Kconfig.cpu" source "arch/h8300/Kconfig.cpu"
menu "Kernel Features"
source "kernel/Kconfig.preempt"
endmenu

View File

@ -4,6 +4,7 @@ comment "Linux Kernel Configuration for Hexagon"
config HEXAGON config HEXAGON
def_bool y def_bool y
select ARCH_NO_PREEMPT
select HAVE_OPROFILE select HAVE_OPROFILE
# Other pending projects/to-do items. # Other pending projects/to-do items.
# select HAVE_REGS_AND_STACK_ACCESS_API # select HAVE_REGS_AND_STACK_ACCESS_API

View File

@ -364,8 +364,6 @@ config FORCE_CPEI_RETARGET
This option it useful to enable this feature on older BIOS's as well. 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. You can also enable this by using boot command line option force_cpei=1.
source "kernel/Kconfig.preempt"
config ARCH_SELECT_MEMORY_MODEL config ARCH_SELECT_MEMORY_MODEL
def_bool y def_bool y

View File

@ -4,6 +4,7 @@ config M68K
default y default y
select ARCH_MIGHT_HAVE_PC_PARPORT if ISA select ARCH_MIGHT_HAVE_PC_PARPORT if ISA
select ARCH_NO_COHERENT_DMA_MMAP if !MMU select ARCH_NO_COHERENT_DMA_MMAP if !MMU
select ARCH_NO_PREEMPT if !COLDFIRE
select HAVE_IDE select HAVE_IDE
select HAVE_AOUT if MMU select HAVE_AOUT if MMU
select HAVE_DEBUG_BUGVERBOSE select HAVE_DEBUG_BUGVERBOSE
@ -129,10 +130,6 @@ endmenu
menu "Kernel Features" menu "Kernel Features"
if COLDFIRE
source "kernel/Kconfig.preempt"
endif
endmenu endmenu
if !MMU if !MMU

View File

@ -87,8 +87,6 @@ source "arch/microblaze/Kconfig.platform"
menu "Processor type and features" menu "Processor type and features"
source "kernel/Kconfig.preempt"
source "kernel/Kconfig.hz" source "kernel/Kconfig.hz"
config MMU config MMU

View File

@ -2818,8 +2818,6 @@ config HZ
config SCHED_HRTICK config SCHED_HRTICK
def_bool HIGH_RES_TIMERS def_bool HIGH_RES_TIMERS
source "kernel/Kconfig.preempt"
config KEXEC config KEXEC
bool "Kexec system call" bool "Kexec system call"
select KEXEC_CORE select KEXEC_CORE

View File

@ -88,6 +88,5 @@ config NDS32_BUILTIN_DTB
endmenu endmenu
menu "Kernel Features" menu "Kernel Features"
source "kernel/Kconfig.preempt"
source "kernel/Kconfig.hz" source "kernel/Kconfig.hz"
endmenu endmenu

View File

@ -47,8 +47,6 @@ config TRACE_IRQFLAGS_SUPPORT
menu "Kernel features" menu "Kernel features"
source "kernel/Kconfig.preempt"
source "kernel/Kconfig.hz" source "kernel/Kconfig.hz"
config FORCE_MAX_ZONEORDER config FORCE_MAX_ZONEORDER

View File

@ -143,7 +143,6 @@ config SMP
If you don't know what to do here, say N. If you don't know what to do here, say N.
source kernel/Kconfig.hz source kernel/Kconfig.hz
source kernel/Kconfig.preempt
config OPENRISC_NO_SPR_SR_DSX config OPENRISC_NO_SPR_SR_DSX
bool "use SPR_SR_DSX software emulation" if OR1K_1200 bool "use SPR_SR_DSX software emulation" if OR1K_1200

View File

@ -323,7 +323,6 @@ config NODES_SHIFT
default "3" default "3"
depends on NEED_MULTIPLE_NODES depends on NEED_MULTIPLE_NODES
source "kernel/Kconfig.preempt"
source "kernel/Kconfig.hz" source "kernel/Kconfig.hz"
config COMPAT config COMPAT

View File

@ -393,7 +393,6 @@ config HIGHMEM
depends on PPC32 depends on PPC32
source kernel/Kconfig.hz source kernel/Kconfig.hz
source kernel/Kconfig.preempt
config HUGETLB_PAGE_SIZE_VARIABLE config HUGETLB_PAGE_SIZE_VARIABLE
bool bool

View File

@ -212,8 +212,6 @@ endmenu
menu "Kernel type" menu "Kernel type"
source "kernel/Kconfig.preempt"
source "kernel/Kconfig.hz" source "kernel/Kconfig.hz"
endmenu endmenu

View File

@ -511,8 +511,6 @@ config SCHED_TOPOLOGY
making when dealing with machines that have multi-threading, making when dealing with machines that have multi-threading,
multiple cores or multiple books. multiple cores or multiple books.
source kernel/Kconfig.preempt
source kernel/Kconfig.hz source kernel/Kconfig.hz
config KEXEC config KEXEC

View File

@ -709,8 +709,6 @@ config HOTPLUG_CPU
Say Y here to experiment with turning CPUs off and on. CPUs Say Y here to experiment with turning CPUs off and on. CPUs
can be controlled through /sys/devices/system/cpu. can be controlled through /sys/devices/system/cpu.
source "kernel/Kconfig.preempt"
config GUSA config GUSA
def_bool y def_bool y
depends on !SMP && SUPERH32 depends on !SMP && SUPERH32

View File

@ -349,8 +349,6 @@ config SCHED_MC
making when dealing with multi-core CPU chips at a cost of slightly making when dealing with multi-core CPU chips at a cost of slightly
increased overhead in some places. If unsure say N here. increased overhead in some places. If unsure say N here.
source "kernel/Kconfig.preempt"
config CMDLINE_BOOL config CMDLINE_BOOL
bool "Default bootloader kernel arguments" bool "Default bootloader kernel arguments"
depends on SPARC64 depends on SPARC64

View File

@ -6,6 +6,7 @@ config UML
bool bool
default y default y
select ARCH_HAS_KCOV select ARCH_HAS_KCOV
select ARCH_NO_PREEMPT
select HAVE_ARCH_AUDITSYSCALL select HAVE_ARCH_AUDITSYSCALL
select HAVE_ARCH_SECCOMP_FILTER select HAVE_ARCH_SECCOMP_FILTER
select HAVE_UID16 select HAVE_UID16

View File

@ -135,8 +135,6 @@ endmenu
menu "Kernel Features" menu "Kernel Features"
source "kernel/Kconfig.preempt"
source "kernel/Kconfig.hz" source "kernel/Kconfig.hz"
config LEDS config LEDS

View File

@ -1039,8 +1039,6 @@ config SCHED_MC_PRIO
If unsure say Y here. If unsure say Y here.
source "kernel/Kconfig.preempt"
config UP_LATE_INIT config UP_LATE_INIT
def_bool y def_bool y
depends on !SMP && X86_LOCAL_APIC depends on !SMP && X86_LOCAL_APIC

View File

@ -173,8 +173,6 @@ config XTENSA_UNALIGNED_USER
Say Y here to enable unaligned memory access in user space. Say Y here to enable unaligned memory access in user space.
source "kernel/Kconfig.preempt"
config HAVE_SMP config HAVE_SMP
bool "System Supports SMP (MX)" bool "System Supports SMP (MX)"
depends on XTENSA_VARIANT_CUSTOM depends on XTENSA_VARIANT_CUSTOM

View File

@ -326,6 +326,7 @@ config AUDIT_TREE
source "kernel/irq/Kconfig" source "kernel/irq/Kconfig"
source "kernel/time/Kconfig" source "kernel/time/Kconfig"
source "kernel/Kconfig.preempt"
menu "CPU/Task time and stats accounting" menu "CPU/Task time and stats accounting"

View File

@ -18,6 +18,7 @@ config PREEMPT_NONE
config PREEMPT_VOLUNTARY config PREEMPT_VOLUNTARY
bool "Voluntary Kernel Preemption (Desktop)" bool "Voluntary Kernel Preemption (Desktop)"
depends on !ARCH_NO_PREEMPT
help help
This option reduces the latency of the kernel by adding more This option reduces the latency of the kernel by adding more
"explicit preemption points" to the kernel code. These new "explicit preemption points" to the kernel code. These new
@ -35,6 +36,7 @@ config PREEMPT_VOLUNTARY
config PREEMPT config PREEMPT
bool "Preemptible Kernel (Low-Latency Desktop)" bool "Preemptible Kernel (Low-Latency Desktop)"
depends on !ARCH_NO_PREEMPT
select PREEMPT_COUNT select PREEMPT_COUNT
select UNINLINE_SPIN_UNLOCK if !ARCH_INLINE_SPIN_UNLOCK select UNINLINE_SPIN_UNLOCK if !ARCH_INLINE_SPIN_UNLOCK
help help

View File

@ -1195,6 +1195,7 @@ config DEBUG_ATOMIC_SLEEP
bool "Sleep inside atomic section checking" bool "Sleep inside atomic section checking"
select PREEMPT_COUNT select PREEMPT_COUNT
depends on DEBUG_KERNEL depends on DEBUG_KERNEL
depends on !ARCH_NO_PREEMPT
help help
If you say Y here, various routines which may sleep will become very 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 noisy if they are called inside atomic sections: when a spinlock is