Skip to content

Commit b787a33

Browse files
Jinjie Ruanbroonie
authored andcommitted
spi: geni-qcom: Fix incorrect free_irq() sequence
In spi_geni_remove(), the free_irq() sequence is different from that on the probe error path. And the IRQ will still remain and it's interrupt handler may use the dma channel after release dma channel and before free irq, which is not secure, fix it. Fixes: b59c122 ("spi: spi-geni-qcom: Add support for GPI dma") Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://patch.msgid.link/20240909073141.951494-3-ruanjinjie@huawei.com Signed-off-by: Mark Brown <broonie@kernel.org>
1 parent 89e362c commit b787a33

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

drivers/spi/spi-geni-qcom.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1170,9 +1170,9 @@ static void spi_geni_remove(struct platform_device *pdev)
11701170
/* Unregister _before_ disabling pm_runtime() so we stop transfers */
11711171
spi_unregister_controller(spi);
11721172

1173-
spi_geni_release_dma_chan(mas);
1174-
11751173
free_irq(mas->irq, spi);
1174+
1175+
spi_geni_release_dma_chan(mas);
11761176
}
11771177

11781178
static int __maybe_unused spi_geni_runtime_suspend(struct device *dev)

0 commit comments

Comments
 (0)