On Friday 23 March 2007 12:01, Jiri Benc wrote: > > @@ -2541,10 +2572,12 @@ void ieee80211_scan_completed(struct iee > > > > spin_lock_bh(&local->sub_if_lock); > > list_for_each_entry(sdata, &local->sub_if_list, list) { > > - netif_wake_queue(sdata->dev); > > - > > - if (sdata->type == IEEE80211_IF_TYPE_STA) > > + if (sdata->type == IEEE80211_IF_TYPE_STA) { > > + if (sdata->u.sta.associated) > > + ieee80211_send_nullfunc(local, sdata, 0); > > ieee80211_sta_timer((unsigned long)&sdata->u.sta); > > + } > > + netif_wake_queue(sdata->dev); > > Shouldn't the queue be woken before calling ieee80211_sta_timer? > ieee80211_sta_timer just schedules the workqueue to run. I'm not sure if the workqueue can run immediately after that, but even if it did, the sta code doesn't depend on the queue of a virtual interface so these lines don't need to run in any particular order. -Michael Wu
Attachment:
pgpbC29qPxsbQ.pgp
Description: PGP signature