On Tue, 2010-01-05 at 23:30 -0600, Larry Finger wrote: > Reauthentication fails with a pop-up to reenter the WPA2 secret as I'm > using NetworkManager. I can only reconnect if b43 (and mac80211) are > unloaded and reloaded. I pulled the patch and confirmed that proper > behavior is returned. Ouch. I can't seem to reproduce this with hwsim, but it never touches the queues. I think it may be because I forgot about 53623f1a09c7a7d23b74f0f7d93dba0ebde1006b ... The patch below is certainly needed, but I'm not entirely sure it'll fix your issue, can you give it a try please? johannes --- wireless-testing.orig/net/mac80211/iface.c 2010-01-06 12:00:03.000000000 +0100 +++ wireless-testing/net/mac80211/iface.c 2010-01-06 12:02:17.000000000 +0100 @@ -328,7 +328,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: @@ -356,7 +356,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. --- wireless-testing.orig/net/mac80211/mlme.c 2010-01-06 12:00:03.000000000 +0100 +++ wireless-testing/net/mac80211/mlme.c 2010-01-06 12:02:17.000000000 +0100 @@ -731,7 +731,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); } @@ -767,7 +767,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(); --- wireless-testing.orig/net/mac80211/offchannel.c 2010-01-06 12:02:37.000000000 +0100 +++ wireless-testing/net/mac80211/offchannel.c 2010-01-06 12:03:02.000000000 +0100 @@ -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 */ -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html