瀏覽代碼

dmaengine: dw: set cdesc to NULL when free cyclic transfers

To be sure we have the cyclic transfers already gone we set cdesc to NULL. It
will prevent the double free.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Andy Shevchenko 9 年之前
父節點
當前提交
925a7d045e
共有 1 個文件被更改,包括 2 次插入0 次删除
  1. 2 0
      drivers/dma/dw/core.c

+ 2 - 0
drivers/dma/dw/core.c

@@ -1522,6 +1522,8 @@ void dw_dma_cyclic_free(struct dma_chan *chan)
 	kfree(cdesc->desc);
 	kfree(cdesc->desc);
 	kfree(cdesc);
 	kfree(cdesc);
 
 
+	dwc->cdesc = NULL;
+
 	clear_bit(DW_DMA_IS_CYCLIC, &dwc->flags);
 	clear_bit(DW_DMA_IS_CYCLIC, &dwc->flags);
 }
 }
 EXPORT_SYMBOL(dw_dma_cyclic_free);
 EXPORT_SYMBOL(dw_dma_cyclic_free);