[PATCH v2 15/15] dmaengine: dw: set cdesc to NULL when free cyclic transfers

From: Andy Shevchenko
Date: Mon Feb 22 2016 - 11:04:11 EST


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@xxxxxxxxxxxxxxx>
Signed-off-by: Mans Rullgard <mans@xxxxxxxxx>
---
drivers/dma/dw/core.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/dma/dw/core.c b/drivers/dma/dw/core.c
index cce0619..14d0df7 100644
--- a/drivers/dma/dw/core.c
+++ b/drivers/dma/dw/core.c
@@ -1485,6 +1485,8 @@ void dw_dma_cyclic_free(struct dma_chan *chan)
kfree(cdesc->desc);
kfree(cdesc);

+ dwc->cdesc = NULL;
+
clear_bit(DW_DMA_IS_CYCLIC, &dwc->flags);
}
EXPORT_SYMBOL(dw_dma_cyclic_free);
--
2.7.0