jz4780_dma_remove() explicitly calls devm_free_irq() before unregistering the DMA device. This is unnecessary: by the time remove() is called there should be no remaining users of the controller, and therefore no chance of an IRQ occurring between unregistering and a later implicit release of the IRQ. Therefore, remove the explicit call and let the device resource management functions do their job. Signed-off-by: Alex Smith <alex.smith@xxxxxxxxxx> Cc: Vinod Koul <vinod.koul@xxxxxxxxx> Cc: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@xxxxxxxxxx> Cc: dmaengine@xxxxxxxxxxxxxxx --- Changes in v2: - New patch to remove unnecessary call reported by Julia Lawall. --- drivers/dma/dma-jz4780.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/dma/dma-jz4780.c b/drivers/dma/dma-jz4780.c index d260c05..01fbbd6 100644 --- a/drivers/dma/dma-jz4780.c +++ b/drivers/dma/dma-jz4780.c @@ -864,7 +864,6 @@ static int jz4780_dma_remove(struct platform_device *pdev) struct jz4780_dma_dev *jzdma = platform_get_drvdata(pdev); of_dma_controller_free(pdev->dev.of_node); - devm_free_irq(&pdev->dev, jzdma->irq, jzdma); dma_async_device_unregister(&jzdma->dma_device); return 0; } -- 2.4.6 -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html