On 18/12/20 18:40, irqchip-bot for Marc Zyngier wrote:
> The following commit has been merged into the irq/irqchip-next branch of
> irqchip:
>
> Commit-ID: d7f39c40ebb6986e7371510d1c20a4efee4a7f0d
> Gitweb:
> https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms/d7f39c40ebb6986e7371510d1c20a4efee4a7f0d
> Author: Marc Zyngier <[email protected]>
> AuthorDate: Fri, 18 Dec 2020 18:03:46
> Committer: Marc Zyngier <[email protected]>
> CommitterDate: Fri, 18 Dec 2020 18:34:17
>
> irqchip/bcm2836: Fix IPI acknowledgement after conversion to
> handle_percpu_devid_irq
>
> It appears that despite its name, the bcm2836_arm_irqchip_ipi_eoi()
> callback is an acknowledgement, and not an EOI. This means that
> we lose IPIs that are made pending between the handling of the
> IPI and the write to LOCAL_MAILBOX0_CLR0. With the right timing,
> things fail nicely.
>
> This used to work with handle_percpu_devid_fasteoi_ipi(), which
> started by eoi-ing the interrupt. With the standard fasteoi flow,
> this doesn't work anymore.
>
> So let's use this callback for what it is, an ack. Your favourite
> RPi-2/3 is back up and running.
>
Thanks for cleaning up my mess!
> Fixes: ffdad793d579 ("irqchip/bcm2836: Make IPIs use
> handle_percpu_devid_irq()")
> Cc: Valentin Schneider <[email protected]>
> Reported-by: Guenter Roeck <[email protected]>
> Tested-by: Guenter Roeck <[email protected]>
> Signed-off-by: Marc Zyngier <[email protected]>
> Link:
> https://lore.kernel.org/r/[email protected]