diff options
author | Nicholas Piggin <npiggin@gmail.com> | 2021-03-16 13:42:00 +0300 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2021-04-14 16:04:43 +0300 |
commit | 097157e16cf8bf91b9cf6fbda05d234d3599c01f (patch) | |
tree | 3148875960976a6d8c24fe07b67fbf07209f98b0 /arch/powerpc/include/asm/interrupt.h | |
parent | 3db8aa10de9a478b3086db7894e0266def3d77af (diff) | |
download | linux-097157e16cf8bf91b9cf6fbda05d234d3599c01f.tar.xz |
powerpc/64e/interrupt: reconcile irq soft-mask state in C
Use existing 64s interrupt entry wrapper code to reconcile irqs in C.
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20210316104206.407354-7-npiggin@gmail.com
Diffstat (limited to 'arch/powerpc/include/asm/interrupt.h')
-rw-r--r-- | arch/powerpc/include/asm/interrupt.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/powerpc/include/asm/interrupt.h b/arch/powerpc/include/asm/interrupt.h index b17a55062bb8..104a77c00a31 100644 --- a/arch/powerpc/include/asm/interrupt.h +++ b/arch/powerpc/include/asm/interrupt.h @@ -51,14 +51,14 @@ static inline void interrupt_enter_prepare(struct pt_regs *regs, struct interrup kuap_save_and_lock(regs); } #endif - /* - * Book3E reconciles irq soft mask in asm - */ -#ifdef CONFIG_PPC_BOOK3S_64 + +#ifdef CONFIG_PPC64 if (irq_soft_mask_set_return(IRQS_ALL_DISABLED) == IRQS_ENABLED) trace_hardirqs_off(); local_paca->irq_happened |= PACA_IRQ_HARD_DIS; +#endif +#ifdef CONFIG_PPC_BOOK3S_64 if (user_mode(regs)) { CT_WARN_ON(ct_state() != CONTEXT_USER); user_exit_irqoff(); |