diff options
author | Vinod Koul <vinod.koul@intel.com> | 2016-07-05 11:27:40 +0200 |
---|---|---|
committer | Vinod Koul <vinod.koul@intel.com> | 2016-07-23 12:37:25 +0200 |
commit | bd16934a5630f1e7294f33f1f72d89d4f6e6aeae (patch) | |
tree | 80dbbc3f81ac0db8df73b4c665f7b48eb416f304 /drivers/dma | |
parent | dmaengine: txx9dmac: explicitly freeup irq (diff) | |
download | linux-bd16934a5630f1e7294f33f1f72d89d4f6e6aeae.tar.xz linux-bd16934a5630f1e7294f33f1f72d89d4f6e6aeae.zip |
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>
Diffstat (limited to 'drivers/dma')
-rw-r--r-- | drivers/dma/qcom/hidma.c | 1 |
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) pm_runtime_get_sync(dmadev->ddev.dev); dma_async_device_unregister(&dmadev->ddev); devm_free_irq(dmadev->ddev.dev, dmadev->irq, dmadev->lldev); + tasklet_kill(&dmadev->task); hidma_debug_uninit(dmadev); hidma_ll_uninit(dmadev->lldev); hidma_free(dmadev); |