mirror of
https://github.com/torvalds/linux.git
synced 2024-11-30 16:11:38 +00:00
390a0c62c2
Currently, we have two different implementation of rwsem: 1) CONFIG_RWSEM_GENERIC_SPINLOCK (rwsem-spinlock.c) 2) CONFIG_RWSEM_XCHGADD_ALGORITHM (rwsem-xadd.c) As we are going to use a single generic implementation for rwsem-xadd.c and no architecture-specific code will be needed, there is no point in keeping two different implementations of rwsem. In most cases, the performance of rwsem-spinlock.c will be worse. It also doesn't get all the performance tuning and optimizations that had been implemented in rwsem-xadd.c over the years. For simplication, we are going to remove rwsem-spinlock.c and make all architectures use a single implementation of rwsem - rwsem-xadd.c. All references to RWSEM_GENERIC_SPINLOCK and RWSEM_XCHGADD_ALGORITHM in the code are removed. Suggested-by: Peter Zijlstra <peterz@infradead.org> Signed-off-by: Waiman Long <longman@redhat.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Acked-by: Linus Torvalds <torvalds@linux-foundation.org> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Borislav Petkov <bp@alien8.de> Cc: Davidlohr Bueso <dave@stgolabs.net> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Tim Chen <tim.c.chen@linux.intel.com> Cc: Will Deacon <will.deacon@arm.com> Cc: linux-arm-kernel@lists.infradead.org Cc: linux-c6x-dev@linux-c6x.org Cc: linux-m68k@lists.linux-m68k.org Cc: linux-riscv@lists.infradead.org Cc: linux-um@lists.infradead.org Cc: linux-xtensa@linux-xtensa.org Cc: linuxppc-dev@lists.ozlabs.org Cc: nios2-dev@lists.rocketboards.org Cc: openrisc@lists.librecores.org Cc: uclinux-h8-devel@lists.sourceforge.jp Link: https://lkml.kernel.org/r/20190322143008.21313-3-longman@redhat.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
104 lines
2.0 KiB
Plaintext
104 lines
2.0 KiB
Plaintext
#
|
|
# For a description of the syntax of this configuration file,
|
|
# see Documentation/kbuild/kconfig-language.txt.
|
|
#
|
|
|
|
config NDS32
|
|
def_bool y
|
|
select ARCH_32BIT_OFF_T
|
|
select ARCH_HAS_SYNC_DMA_FOR_CPU
|
|
select ARCH_HAS_SYNC_DMA_FOR_DEVICE
|
|
select ARCH_WANT_FRAME_POINTERS if FTRACE
|
|
select CLKSRC_MMIO
|
|
select CLONE_BACKWARDS
|
|
select COMMON_CLK
|
|
select GENERIC_ATOMIC64
|
|
select GENERIC_CPU_DEVICES
|
|
select GENERIC_CLOCKEVENTS
|
|
select GENERIC_IRQ_CHIP
|
|
select GENERIC_IRQ_SHOW
|
|
select GENERIC_LIB_ASHLDI3
|
|
select GENERIC_LIB_ASHRDI3
|
|
select GENERIC_LIB_CMPDI2
|
|
select GENERIC_LIB_LSHRDI3
|
|
select GENERIC_LIB_MULDI3
|
|
select GENERIC_LIB_UCMPDI2
|
|
select GENERIC_STRNCPY_FROM_USER
|
|
select GENERIC_STRNLEN_USER
|
|
select GENERIC_TIME_VSYSCALL
|
|
select HANDLE_DOMAIN_IRQ
|
|
select HAVE_ARCH_TRACEHOOK
|
|
select HAVE_DEBUG_KMEMLEAK
|
|
select HAVE_EXIT_THREAD
|
|
select HAVE_REGS_AND_STACK_ACCESS_API
|
|
select HAVE_PERF_EVENTS
|
|
select IRQ_DOMAIN
|
|
select LOCKDEP_SUPPORT
|
|
select MODULES_USE_ELF_RELA
|
|
select OF
|
|
select OF_EARLY_FLATTREE
|
|
select NO_IOPORT_MAP
|
|
select RTC_LIB
|
|
select THREAD_INFO_IN_TASK
|
|
select HAVE_FUNCTION_TRACER
|
|
select HAVE_FUNCTION_GRAPH_TRACER
|
|
select HAVE_FTRACE_MCOUNT_RECORD
|
|
select HAVE_DYNAMIC_FTRACE
|
|
help
|
|
Andes(nds32) Linux support.
|
|
|
|
config GENERIC_CALIBRATE_DELAY
|
|
def_bool y
|
|
|
|
config GENERIC_CSUM
|
|
def_bool y
|
|
|
|
config GENERIC_HWEIGHT
|
|
def_bool y
|
|
|
|
config GENERIC_LOCKBREAK
|
|
def_bool y
|
|
depends on PREEMPT
|
|
|
|
config TRACE_IRQFLAGS_SUPPORT
|
|
def_bool y
|
|
|
|
config STACKTRACE_SUPPORT
|
|
def_bool y
|
|
|
|
config FIX_EARLYCON_MEM
|
|
def_bool y
|
|
|
|
config PGTABLE_LEVELS
|
|
default 2
|
|
|
|
menu "System Type"
|
|
source "arch/nds32/Kconfig.cpu"
|
|
config NR_CPUS
|
|
int
|
|
default 1
|
|
|
|
config MMU
|
|
def_bool y
|
|
|
|
config NDS32_BUILTIN_DTB
|
|
string "Builtin DTB"
|
|
default ""
|
|
help
|
|
User can use it to specify the dts of the SoC
|
|
endmenu
|
|
|
|
menu "Kernel Features"
|
|
source "kernel/Kconfig.hz"
|
|
endmenu
|
|
|
|
menu "Power management options"
|
|
config SYS_SUPPORTS_APM_EMULATION
|
|
bool
|
|
|
|
config ARCH_SUSPEND_POSSIBLE
|
|
def_bool y
|
|
|
|
source "kernel/power/Kconfig"
|
|
endmenu
|