summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Ujfalusi <peter.ujfalusi@ti.com>2017-11-14 16:32:05 +0200
committerVinod Koul <vinod.koul@intel.com>2017-12-04 22:33:51 +0530
commitb1faf0f564ffa6c58f7c7c9a9263dc0f7f78e215 (patch)
tree4a38c14c6807b60ccf7517b107ca69eb78bbb03c
parent1c7f072d94e8b697fd9b70cdb268622a18faf522 (diff)
downloadlinux-b1faf0f564ffa6c58f7c7c9a9263dc0f7f78e215.tar.bz2
dmaengine: omap-dma: Use vchan_terminate_vdesc() instead of desc_free
To avoid race with vchan_complete, use the race free way to terminate running transfer. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
-rw-r--r--drivers/dma/omap-dma.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/dma/omap-dma.c b/drivers/dma/omap-dma.c
index f6dd849159d8..d21c19822feb 100644
--- a/drivers/dma/omap-dma.c
+++ b/drivers/dma/omap-dma.c
@@ -1311,7 +1311,7 @@ static int omap_dma_terminate_all(struct dma_chan *chan)
* c->desc is NULL and exit.)
*/
if (c->desc) {
- omap_dma_desc_free(&c->desc->vd);
+ vchan_terminate_vdesc(&c->desc->vd);
c->desc = NULL;
/* Avoid stopping the dma twice */
if (!c->paused)