platform_kernel-5.15/arch/arm64
Steve Capper f97fc81079 arm64: percpu: Implement this_cpu operations
The generic this_cpu operations disable interrupts to ensure that the
requested operation is protected from pre-emption. For arm64, this is
overkill and can hurt throughput and latency.

This patch provides arm64 specific implementations for the this_cpu
operations. Rather than disable interrupts, we use the exclusive
monitor or atomic operations as appropriate.

The following operations are implemented: add, add_return, and, or,
read, write, xchg. We also wire up a cmpxchg implementation from
cmpxchg.h.

Testing was performed using the percpu_test module and hackbench on a
Juno board running 3.18-rc4.

Signed-off-by: Steve Capper <steve.capper@linaro.org>
Reviewed-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2014-11-20 12:05:18 +00:00
..
boot arm64: vexpress: Add CLCD support to the ARMv8 model platform 2014-10-22 15:33:16 +01:00
configs arm64: vexpress: Add CLCD support to the ARMv8 model platform 2014-10-22 15:33:16 +01:00
crypto arm64/crypto: use crypto instructions to generate AES key schedule 2014-11-06 17:25:28 +00:00
include arm64: percpu: Implement this_cpu operations 2014-11-20 12:05:18 +00:00
kernel arm64: Add COMPAT_HWCAP_LPAE 2014-11-17 10:43:42 +00:00
kvm arm64: kvm: eliminate literal pool entries 2014-11-07 15:04:54 +00:00
lib arm64: lib: Implement optimized string length routines 2014-05-23 15:17:12 +01:00
mm arm64: pgalloc: consistently use PGALLOC_GFP 2014-11-20 12:05:18 +00:00
net net: bpf: arm64: minor fix of type in jited 2014-10-20 17:47:04 +01:00
xen arm: xen: implement multicall hypercall support. 2014-04-24 13:09:46 +01:00
Kconfig arm64: xchg: Implement cmpxchg_double 2014-11-06 17:25:28 +00:00
Kconfig.debug arm64: Add CONFIG_DEBUG_SET_MODULE_RONX support 2014-09-08 14:39:18 +01:00
Makefile Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2014-10-14 09:22:26 +02:00