mac80211: Fixed netif_tx_wake_all_queues in IBSS mode

When ieee80211_offchannel_return is called, it needs to re-enabled TX
queues that have been stopped in ieee80211_offchannel_stop_beaconing or
ieee80211_offchannel_stop_station. It happens if we are doing a scan with an
IBSS interface. In this case, the interface stopped transmitting.

Signed-off-by: Benoit Papillault <benoit.papillault@free.fr>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Benoit Papillault 2010-01-14 23:20:31 +01:00 committed by John W. Linville
parent b6b1ac6937
commit 93895757df

View File

@ -153,9 +153,11 @@ void ieee80211_offchannel_return(struct ieee80211_local *local,
if (sdata->vif.type == NL80211_IFTYPE_STATION) {
if (sdata->u.mgd.associated)
ieee80211_offchannel_ps_disable(sdata);
netif_tx_wake_all_queues(sdata->dev);
}
if (sdata->vif.type != NL80211_IFTYPE_MONITOR)
netif_tx_wake_all_queues(sdata->dev);
/* re-enable beaconing */
if (enable_beaconing &&
(sdata->vif.type == NL80211_IFTYPE_AP ||