-----Original Message----- From: Fabio Estevam festevam@gmail.com Sent: 2019年6月24日 20:55
Hi Robin,
On Fri, Jun 21, 2019 at 5:21 AM yibin.gong@nxp.com wrote:
From: Robin Gong yibin.gong@nxp.com
It is possible for an irq triggered by channel0 to be received later after clks are disabled once firmware loaded during sdma probe. If that happens then clearing them by writing to SDMA_H_INTR won't work and the kernel will hang processing infinite interrupts. Actually, don't need interrupt triggered on channel0 since it's pollling SDMA_H_STATSTOP to know channel0 done rather than interrupt in current code, just clear BD_INTR to disable channel0 interrupt to avoid the above case. This issue was brought by commit 1d069bfa3c78 ("dmaengine: imx-sdma: ack channel 0 IRQ in the interrupt handler") which didn't take care the above case.
Fixes: 1d069bfa3c78 ("dmaengine: imx-sdma: ack channel 0 IRQ in the interrupt handler") Cc: stable@vger.kernel.org #5.0+
This 5.0 notation does not look correct, as 1d069bfa3c78 was introduced in 4.10.
Yes, although Sven only met this issue after v4.19, this potential issue should be there. But 1d069bfa3c78 seems merged from v4.7 instead?