summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/interrupt_64.S
diff options
context:
space:
mode:
authorNicholas Piggin <npiggin@gmail.com>2021-06-17 17:51:10 +0200
committerMichael Ellerman <mpe@ellerman.id.au>2021-06-24 16:06:56 +0200
commit9d1988ca87dd90ecf80a0601c7fd13071fbb1a83 (patch)
treeefef71434955ee8cfe2edd8414fde31434040d5f /arch/powerpc/kernel/interrupt_64.S
parentpowerpc/64: interrupt soft-enable race fix (diff)
downloadlinux-9d1988ca87dd90ecf80a0601c7fd13071fbb1a83.tar.xz
linux-9d1988ca87dd90ecf80a0601c7fd13071fbb1a83.zip
powerpc/64: treat low kernel text as irqs soft-masked
Treat code below __end_soft_masked as soft-masked for the purpose of alternate return. 64s already mostly does this for scv entry. This will be used to exit from interrupts without disabling MSR[EE]. Signed-off-by: Nicholas Piggin <npiggin@gmail.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20210617155116.2167984-12-npiggin@gmail.com
Diffstat (limited to 'arch/powerpc/kernel/interrupt_64.S')
-rw-r--r--arch/powerpc/kernel/interrupt_64.S6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/interrupt_64.S b/arch/powerpc/kernel/interrupt_64.S
index ab6b99609d0e..33ee83791487 100644
--- a/arch/powerpc/kernel/interrupt_64.S
+++ b/arch/powerpc/kernel/interrupt_64.S
@@ -632,4 +632,8 @@ ALT_FTR_SECTION_END_IFCLR(CPU_FTR_STCX_CHECKS_ADDRESS)
interrupt_return_macro srr
#ifdef CONFIG_PPC_BOOK3S
interrupt_return_macro hsrr
-#endif
+#endif /* CONFIG_PPC_BOOK3S */
+
+ .globl __end_soft_masked
+__end_soft_masked:
+DEFINE_FIXED_SYMBOL(__end_soft_masked)