Message ID | 20200814131412.GA9797@ls3530 (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | parisc: Avoid external interrupts when IPI finishes | expand |
diff --git a/arch/parisc/kernel/smp.c b/arch/parisc/kernel/smp.c index 6271139d2213..cd7694497428 100644 --- a/arch/parisc/kernel/smp.c +++ b/arch/parisc/kernel/smp.c @@ -173,9 +183,12 @@ ipi_interrupt(int irq, void *dev_id) this_cpu, which); return IRQ_NONE; } /* Switch */ - /* let in any pending interrupts */ - local_irq_enable(); - local_irq_disable(); + + /* before doing more, let in any pending interrupts */ + if (ops) { + local_irq_enable(); + local_irq_disable(); + } } /* while (ops) */ } return IRQ_HANDLED;
No need to allow external interrupts when the IPI loop is going to finish now. Signed-off-by: Helge Deller <deller@gmx.de>