summaryrefslogtreecommitdiff
path: root/arch/powerpc/include/asm/exception-64e.h
diff options
context:
space:
mode:
authorNicholas Piggin <npiggin@gmail.com>2020-07-16 11:35:22 +1000
committerMichael Ellerman <mpe@ellerman.id.au>2020-07-23 17:43:23 +1000
commit2384b36f9156c3b815a5ce5f694edc5054ab7625 (patch)
tree1c899ff71242c1660cdf826f87bd1136898fb1d8 /arch/powerpc/include/asm/exception-64e.h
parent147c13413c04bc6a2bd76f2503402905e5e98cff (diff)
powerpc: Select ARCH_HAS_MEMBARRIER_SYNC_CORE
powerpc return from interrupt and return from system call sequences are context synchronising. Signed-off-by: Nicholas Piggin <npiggin@gmail.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20200716013522.338318-1-npiggin@gmail.com
Diffstat (limited to 'arch/powerpc/include/asm/exception-64e.h')
-rw-r--r--arch/powerpc/include/asm/exception-64e.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/powerpc/include/asm/exception-64e.h b/arch/powerpc/include/asm/exception-64e.h
index 54a98ef7d7fe..72b6657acd2d 100644
--- a/arch/powerpc/include/asm/exception-64e.h
+++ b/arch/powerpc/include/asm/exception-64e.h
@@ -204,7 +204,11 @@ exc_##label##_book3e:
LOAD_REG_ADDR(r3,interrupt_base_book3e);\
ori r3,r3,vector_offset@l; \
mtspr SPRN_IVOR##vector_number,r3;
-
+/*
+ * powerpc relies on return from interrupt/syscall being context synchronising
+ * (which rfi is) to support ARCH_HAS_MEMBARRIER_SYNC_CORE without additional
+ * synchronisation instructions.
+ */
#define RFI_TO_KERNEL \
rfi