ar9170: remove unneeded flush_workqueue()
authorLuis R. Rodriguez <lrodriguez@atheros.com>
Mon, 27 Jul 2009 19:51:37 +0000 (12:51 -0700)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 4 Aug 2009 20:43:20 +0000 (16:43 -0400)
cancel_delayed_work_sync() and cancel_work_sync() are already being
used therefore already waiting for all pending work by the driver
to have been completed, no need to flush the mac80211 workqueue.

Cc: Christian Lamparter <chunkeey@web.de>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ar9170/main.c

index 85a1452a7c3c30707f67b8f2df6d37b95405f20b..099ed3c3ba28116e6a3be457a7f057e942b66dd8 100644 (file)
@@ -1290,14 +1290,13 @@ static void ar9170_op_stop(struct ieee80211_hw *hw)
        if (IS_STARTED(ar))
                ar->state = AR9170_IDLE;
 
-       flush_workqueue(ar->hw->workqueue);
-
        cancel_delayed_work_sync(&ar->tx_janitor);
 #ifdef CONFIG_AR9170_LEDS
        cancel_delayed_work_sync(&ar->led_work);
 #endif
        cancel_work_sync(&ar->filter_config_work);
        cancel_work_sync(&ar->beacon_work);
+
        mutex_lock(&ar->mutex);
 
        if (IS_ACCEPTING_CMD(ar)) {