diff options
| author | David S. Miller <davem@davemloft.net> | 2023-02-17 11:06:39 +0000 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2023-02-17 11:06:39 +0000 |
| commit | 675f176b4dcc2b75adbcea7ba0e9a649527f53bd (patch) | |
| tree | dc5eea870c19b405bb6558964e5367bb6c9205c5 /arch/powerpc/kernel/interrupt.c | |
| parent | 84cb1b53cdbad52642571e31a8aee301206d2043 (diff) | |
| parent | ec35307e18ba8174e2a3f701956059f6a36f22fb (diff) | |
Merge ra.kernel.org:/pub/scm/linux/kernel/git/netdev/net
Some of the devlink bits were tricky, but I think I got it right.
Signed-off-by: David S. Miller <davem@davemloft.net>
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(); } |