Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dmaengine: ti: omap-dma: Add cleanup in omap_dma_probe()

If devm_request_irq() fails to disable all interrupts, no cleanup is
performed before retuning the error. To fix this issue, invoke
omap_dma_free() to do the cleanup.

Signed-off-by: Wenwen Wang <wenwen@cs.uga.edu>
Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Link: https://lore.kernel.org/r/1565938570-7528-1-git-send-email-wenwen@cs.uga.edu
Signed-off-by: Vinod Koul <vkoul@kernel.org>

authored by

Wenwen Wang and committed by
Vinod Koul
962411b0 2c231c0c

+3 -1
+3 -1
drivers/dma/ti/omap-dma.c
··· 1540 1540 1541 1541 rc = devm_request_irq(&pdev->dev, irq, omap_dma_irq, 1542 1542 IRQF_SHARED, "omap-dma-engine", od); 1543 - if (rc) 1543 + if (rc) { 1544 + omap_dma_free(od); 1544 1545 return rc; 1546 + } 1545 1547 } 1546 1548 1547 1549 if (omap_dma_glbl_read(od, CAPS_0) & CAPS_0_SUPPORT_LL123)