K 10 svn:author V 6 adrian K 8 svn:date V 27 2011-08-15T15:26:36.111633Z K 7 svn:log V 998 More BAR related stuff, which is partially locking related stuff. * Pause/unpause the queue when BAR TX is complete. The problem is that we're not notified when a BAR TX times out and the TX won't happen again - the session is just torn down. So, to work around the API shortcomings for now, hard-code it to cause an unpause at retry == 50. This only works if the hardware _DOES_ call the callback upon frame TX failure. If the callback never gets called, this will all fall in a heap. Luckily, ath will. * Fix locking around TXQ pause/resume calls, as they can occur from the upper layers. This isn't entirely complete, as I'm not similarly locking the pause/resume checks in the rest of the code. I'll do that soon. * Only pause the TID if the ieee80211_send_bar() call was successful. This now seems to work fine with TX packet loss in non-aggregate mode, but I'm not yet convinced that I'm sending the correct sequence number in the BAR frame. I'll look at that next. END