diff options
author | Michael Ellerman <mpe@ellerman.id.au> | 2023-02-12 22:11:56 +1100 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2023-02-12 22:11:56 +1100 |
commit | fc8a898cfdbb0e63cfde547715c2031de22e7893 (patch) | |
tree | e1eaae008d673bb68cdc003d72eadc4ba5535a18 /arch/powerpc/kernel/interrupt.c | |
parent | 544f823ec7a34332550f22735959d3e1ffcf4684 (diff) | |
parent | 2ea31e2e62bbc4d11c411eeb36f1b02841dbcab1 (diff) | |
download | linux-fc8a898cfdbb0e63cfde547715c2031de22e7893.tar.gz linux-fc8a898cfdbb0e63cfde547715c2031de22e7893.tar.bz2 linux-fc8a898cfdbb0e63cfde547715c2031de22e7893.zip |
Merge branch 'fixes' into next
Merge our fixes branch to bring in some changes that conflict with
upcoming next content.
Diffstat (limited to 'arch/powerpc/kernel/interrupt.c')
-rw-r--r-- | arch/powerpc/kernel/interrupt.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/interrupt.c b/arch/powerpc/kernel/interrupt.c index fc6631a80527..0ec1581619db 100644 --- a/arch/powerpc/kernel/interrupt.c +++ b/arch/powerpc/kernel/interrupt.c @@ -50,16 +50,18 @@ static inline bool exit_must_hard_disable(void) */ static notrace __always_inline bool prep_irq_for_enabled_exit(bool restartable) { + bool must_hard_disable = (exit_must_hard_disable() || !restartable); + /* This must be done with RI=1 because tracing may touch vmaps */ trace_hardirqs_on(); - if (exit_must_hard_disable() || !restartable) + if (must_hard_disable) __hard_EE_RI_disable(); #ifdef CONFIG_PPC64 /* This pattern matches prep_irq_for_idle */ if (unlikely(lazy_irq_pending_nocheck())) { - if (exit_must_hard_disable() || !restartable) { + if (must_hard_disable) { local_paca->irq_happened |= PACA_IRQ_HARD_DIS; __hard_RI_enable(); } |