aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm64/kernel/arm64ksyms.c
diff options
context:
space:
mode:
authorCatalin Marinas <catalin.marinas@arm.com>2013-03-21 12:28:47 -0400
committerCatalin Marinas <catalin.marinas@arm.com>2013-03-21 13:39:31 -0400
commit62479586532715b6da4777374a6f53b32453385e (patch)
tree232004eb56bf36b966ea11ec8295a1b2893ac9e9 /arch/arm64/kernel/arm64ksyms.c
parent2b8cac814cd5a0a305d62dcd1d589faccb705a4d (diff)
arm64: klib: Optimised atomic bitops
This patch implements the AArch64-specific atomic bitops functions using exclusive memory accesses to avoid locking. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm64/kernel/arm64ksyms.c')
-rw-r--r--arch/arm64/kernel/arm64ksyms.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/arch/arm64/kernel/arm64ksyms.c b/arch/arm64/kernel/arm64ksyms.c
index a5d0d4643109..7df1aad29b67 100644
--- a/arch/arm64/kernel/arm64ksyms.c
+++ b/arch/arm64/kernel/arm64ksyms.c
@@ -39,11 +39,6 @@ EXPORT_SYMBOL(__copy_from_user);
39EXPORT_SYMBOL(__copy_to_user); 39EXPORT_SYMBOL(__copy_to_user);
40EXPORT_SYMBOL(__clear_user); 40EXPORT_SYMBOL(__clear_user);
41 41
42 /* bitops */
43#ifdef CONFIG_SMP
44EXPORT_SYMBOL(__atomic_hash);
45#endif
46
47 /* physical memory */ 42 /* physical memory */
48EXPORT_SYMBOL(memstart_addr); 43EXPORT_SYMBOL(memstart_addr);
49 44
@@ -54,3 +49,11 @@ EXPORT_SYMBOL(memset);
54EXPORT_SYMBOL(memcpy); 49EXPORT_SYMBOL(memcpy);
55EXPORT_SYMBOL(memmove); 50EXPORT_SYMBOL(memmove);
56EXPORT_SYMBOL(memchr); 51EXPORT_SYMBOL(memchr);
52
53 /* atomic bitops */
54EXPORT_SYMBOL(set_bit);
55EXPORT_SYMBOL(test_and_set_bit);
56EXPORT_SYMBOL(clear_bit);
57EXPORT_SYMBOL(test_and_clear_bit);
58EXPORT_SYMBOL(change_bit);
59EXPORT_SYMBOL(test_and_change_bit);