--- a/net/mac80211/iface.c +++ b/net/mac80211/iface.c @@ -329,7 +329,7 @@ static int ieee80211_open(struct net_dev if (sdata->vif.type == NL80211_IFTYPE_STATION) ieee80211_queue_work(&local->hw, &sdata->u.mgd.work); - netif_start_queue(dev); + netif_tx_start_all_queues(dev); return 0; err_del_interface: @@ -357,7 +357,7 @@ static int ieee80211_stop(struct net_dev /* * Stop TX on this interface first. */ - netif_stop_queue(dev); + netif_tx_stop_all_queues(dev); /* * Purge work for this interface. --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -723,7 +723,7 @@ static void ieee80211_set_associated(str ieee80211_recalc_smps(local, sdata); mutex_unlock(&local->iflist_mtx); - netif_start_queue(sdata->dev); + netif_tx_start_all_queues(sdata->dev); netif_carrier_on(sdata->dev); } @@ -759,7 +759,7 @@ static void ieee80211_set_disassoc(struc * time -- we don't want the scan code to enable queues. */ - netif_stop_queue(sdata->dev); + netif_tx_stop_all_queues(sdata->dev); netif_carrier_off(sdata->dev); rcu_read_lock(); --- a/net/mac80211/offchannel.c +++ b/net/mac80211/offchannel.c @@ -113,7 +113,7 @@ void ieee80211_offchannel_stop_beaconing */ if (sdata->vif.type != NL80211_IFTYPE_STATION && sdata->vif.type != NL80211_IFTYPE_MONITOR) - netif_stop_queue(sdata->dev); + netif_tx_stop_all_queues(sdata->dev); } mutex_unlock(&local->iflist_mtx); } @@ -131,7 +131,7 @@ void ieee80211_offchannel_stop_station(s continue; if (sdata->vif.type == NL80211_IFTYPE_STATION) { - netif_stop_queue(sdata->dev); + netif_tx_stop_all_queues(sdata->dev); if (sdata->u.mgd.associated) ieee80211_offchannel_ps_enable(sdata); } @@ -153,7 +153,7 @@ void ieee80211_offchannel_return(struct if (sdata->vif.type == NL80211_IFTYPE_STATION) { if (sdata->u.mgd.associated) ieee80211_offchannel_ps_disable(sdata); - netif_wake_queue(sdata->dev); + netif_tx_wake_all_queues(sdata->dev); } /* re-enable beaconing */