mac80211: Cancel the power save timer in ieee80211_stop.
authorVivek Natarajan <vivek.natraj@gmail.com>
Wed, 24 Dec 2008 08:34:37 +0000 (00:34 -0800)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 29 Jan 2009 20:58:49 +0000 (15:58 -0500)
Since the station info is flushed before calling set_disassoc
in ieee80211_stop, the power save timer is never cancelled
when the driver is unloaded. Hence the timer cancellation has
to be done in ieee80211_stop itself.

Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/mac80211/iface.c

index 1eefc5d..8e0e330 100644 (file)
@@ -383,6 +383,8 @@ static int ieee80211_stop(struct net_device *dev)
                atomic_dec(&local->iff_promiscs);
 
        dev_mc_unsync(local->mdev, dev);
+       del_timer_sync(&local->dynamic_ps_timer);
+       cancel_work_sync(&local->dynamic_ps_enable_work);
 
        /* APs need special treatment */
        if (sdata->vif.type == NL80211_IFTYPE_AP) {