aboutsummaryrefslogtreecommitdiff
path: root/drivers/mmc
diff options
context:
space:
mode:
authorStefan Nilsson XK <stefan.xk.nilsson@stericsson.com>2011-05-13 14:52:51 +0200
committersaid m bagheri <ebgheri@steludxu2848.(none)>2011-06-17 13:41:46 +0200
commit123944b31016b5ca03d95011e7b2610d42452f4b (patch)
tree49ed8542b1a336a567ce6c720e3ecff8930f5704 /drivers/mmc
parentc1bfbc296dbc4e6af21822db81917a4bb7ecdd7e (diff)
SDIO: Clean work queue before destroy
Make sure to clean up any delayed works on the SDIO IRQ work queue before destroying it. ST-Ericsson Linux next: Not tested ST-Ericsson ID: AP340422 ST-Ericsson FOSS-OUT ID: Trivial Change-Id: Idd4236bd1d6ce30fd17b602bfff3f1f2b8303289 Signed-off-by: Stefan Nilsson XK <stefan.xk.nilsson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/23053 Reviewed-by: QATEST Reviewed-by: Ulf HANSSON <ulf.hansson@stericsson.com> Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/core/sdio_irq.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/mmc/core/sdio_irq.c b/drivers/mmc/core/sdio_irq.c
index 96f81237d75..7502ba3ebda 100644
--- a/drivers/mmc/core/sdio_irq.c
+++ b/drivers/mmc/core/sdio_irq.c
@@ -173,6 +173,7 @@ static int sdio_card_irq_put(struct mmc_card *card)
if (!--host->sdio_irqs) {
host->ops->enable_sdio_irq(host, false);
+ cancel_delayed_work_sync(&host->sdio_irq_work);
destroy_workqueue(host->sdio_irq_workqueue);
host->sdio_irq_workqueue = NULL;
}