aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVinod Koul <vinod.koul@intel.com>2016-07-05 05:27:40 -0400
committerVinod Koul <vinod.koul@intel.com>2016-07-23 06:37:25 -0400
commitbd16934a5630f1e7294f33f1f72d89d4f6e6aeae (patch)
tree80dbbc3f81ac0db8df73b4c665f7b48eb416f304
parentdebc4849007517be8f03a199ea29dc3f797c329e (diff)
dmaengine: qcom_hidma: kill the tasklets upon exit
drivers should ensure that tasklets are killed, so that they can't be run after driver remove is executed Signed-off-by: Vinod Koul <vinod.koul@intel.com> Acked-by: Sinan Kaya <okaya@codeaurora.org>
-rw-r--r--drivers/dma/qcom/hidma.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/dma/qcom/hidma.c b/drivers/dma/qcom/hidma.c
index 41b5c6dee713..b2374cd91e45 100644
--- a/drivers/dma/qcom/hidma.c
+++ b/drivers/dma/qcom/hidma.c
@@ -708,6 +708,7 @@ static int hidma_remove(struct platform_device *pdev)
708 pm_runtime_get_sync(dmadev->ddev.dev); 708 pm_runtime_get_sync(dmadev->ddev.dev);
709 dma_async_device_unregister(&dmadev->ddev); 709 dma_async_device_unregister(&dmadev->ddev);
710 devm_free_irq(dmadev->ddev.dev, dmadev->irq, dmadev->lldev); 710 devm_free_irq(dmadev->ddev.dev, dmadev->irq, dmadev->lldev);
711 tasklet_kill(&dmadev->task);
711 hidma_debug_uninit(dmadev); 712 hidma_debug_uninit(dmadev);
712 hidma_ll_uninit(dmadev->lldev); 713 hidma_ll_uninit(dmadev->lldev);
713 hidma_free(dmadev); 714 hidma_free(dmadev);