aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWill Deacon <will.deacon@arm.com>2014-02-17 14:13:28 +0000
committerMoyster <oysterized@gmail.com>2016-09-13 13:23:08 +0200
commit57be265a1b3034673e481d00e27b72c93b073d13 (patch)
tree4e3d1dbea78a0fdfc72fef0028d4a078a5ab8a6b
parentb0d56e6c90efeec41cfbce97b973d4516d5db0a3 (diff)
downloadandroid_kernel_m2note-57be265a1b3034673e481d00e27b72c93b073d13.tar.gz
ARM: rwsem: use asm-generic rwsem implementation
asm-generic offers an atomic-add based rwsem implementation, which can avoid the need for heavier, spinlock-based synchronisation on the fast path. This patch makes use of the optimised implementation for ARM CPUs. Signed-off-by: Will Deacon <will.deacon@arm.com>
-rw-r--r--arch/arm/Kconfig5
-rw-r--r--arch/arm/include/asm/Kbuild1
2 files changed, 2 insertions, 4 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index f6de5b921..055591397 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -159,12 +159,9 @@ config TRACE_IRQFLAGS_SUPPORT
bool
default y
-config RWSEM_GENERIC_SPINLOCK
- bool
- default y
-
config RWSEM_XCHGADD_ALGORITHM
bool
+ default y
config ARCH_HAS_ILOG2_U32
bool
diff --git a/arch/arm/include/asm/Kbuild b/arch/arm/include/asm/Kbuild
index 9b0610b4d..e27ca6b2e 100644
--- a/arch/arm/include/asm/Kbuild
+++ b/arch/arm/include/asm/Kbuild
@@ -18,6 +18,7 @@ generic-y += param.h
generic-y += parport.h
generic-y += poll.h
generic-y += resource.h
+generic-y += rwsem.h
generic-y += sections.h
generic-y += segment.h
generic-y += sembuf.h