Browse Source

mac80211: Cancel the dynamic ps timer in ioctl_siwpower.

If the dynamic power save timer has been started before the power save
is disabled using iwconfig, we fail to cancel the timer. Hence cancel it
while disabling power save.

Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Vivek Natarajan 16 years ago
parent
commit
b8abde45d7
1 changed files with 2 additions and 0 deletions
  1. 2 0
      net/mac80211/wext.c

+ 2 - 0
net/mac80211/wext.c

@@ -906,6 +906,8 @@ static int ieee80211_ioctl_siwpower(struct net_device *dev,
 					IEEE80211_CONF_CHANGE_PS);
 					IEEE80211_CONF_CHANGE_PS);
 			if (local->hw.flags & IEEE80211_HW_PS_NULLFUNC_STACK)
 			if (local->hw.flags & IEEE80211_HW_PS_NULLFUNC_STACK)
 				ieee80211_send_nullfunc(local, sdata, 0);
 				ieee80211_send_nullfunc(local, sdata, 0);
+			del_timer_sync(&local->dynamic_ps_timer);
+			cancel_work_sync(&local->dynamic_ps_enable_work);
 		}
 		}
 	}
 	}