summaryrefslogtreecommitdiffstats
path: root/drivers/dma
diff options
context:
space:
mode:
authorPeter Ujfalusi2017-11-14 15:32:05 +0100
committerVinod Koul2017-12-04 18:03:51 +0100
commitb1faf0f564ffa6c58f7c7c9a9263dc0f7f78e215 (patch)
tree4a38c14c6807b60ccf7517b107ca69eb78bbb03c /drivers/dma
parentdmaengine: virt-dma: Support for race free transfer termination (diff)
downloadkernel-qcow2-linux-b1faf0f564ffa6c58f7c7c9a9263dc0f7f78e215.tar.gz
kernel-qcow2-linux-b1faf0f564ffa6c58f7c7c9a9263dc0f7f78e215.tar.xz
kernel-qcow2-linux-b1faf0f564ffa6c58f7c7c9a9263dc0f7f78e215.zip
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>
Diffstat (limited to 'drivers/dma')
-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)