From: Devendra Naga Date: Sat, 13 Apr 2013 14:46:51 +0000 (+0530) Subject: UPSTREAM: staging: gdm72xx: cancel work when driver unloads X-Git-Url: http://git.cascardo.eti.br/?a=commitdiff_plain;h=070963eacbf6d1053d8dff392ac35a98964bf300;hp=6f67a2fd1360a441857f531a10469423b47d54c4;p=cascardo%2Flinux.git UPSTREAM: staging: gdm72xx: cancel work when driver unloads cancel the work function at driver unload stage and remove the function from the queue Cc: Ben Chan Signed-off-by: Devendra Naga Signed-off-by: Greg Kroah-Hartman (cherry picked from commit c0352cb71d3d573a33af92d320f29f1c79d71b8b) Change-Id: I8c4e522270b4acad07d125398b1afe4a14810f16 Signed-off-by: Ben Chan Reviewed-on: https://gerrit.chromium.org/gerrit/49427 Reviewed-by: Paul Stewart Reviewed-by: Olof Johansson --- diff --git a/drivers/staging/gdm72xx/gdm_sdio.c b/drivers/staging/gdm72xx/gdm_sdio.c index 8b8ed981d102..6ccb41fff597 100644 --- a/drivers/staging/gdm72xx/gdm_sdio.c +++ b/drivers/staging/gdm72xx/gdm_sdio.c @@ -693,6 +693,7 @@ static void sdio_wimax_remove(struct sdio_func *func) struct phy_dev *phy_dev = sdio_get_drvdata(func); struct sdiowm_dev *sdev = phy_dev->priv_dev; + cancel_work_sync(&sdev->ws); if (phy_dev->netdev) unregister_wimax_device(phy_dev); sdio_claim_host(func);