K 10 svn:author V 6 adrian K 8 svn:date V 27 2011-09-19T08:01:21.373190Z K 7 svn:log V 1123 First cut at enabling the TX of BAR frams. Currently ieee80211_send_bar() calls back into the driver via ic->ic_raw_xmit(). The driver has some special case code to directly dispatch BAR frames for this exact purpose. This means that the hardware TXQ lock is needed, so BAR frame TX must occur from _outside_ the TXQ lock. * Unlock the TXQ before attempting to send a BAR frame * Take a note of the txseq whilst inside the TXQ lock - although other contexts may allocate TX sequence numbers (and I'm about to stick that inside the TXQ lock too just to be safe), all frames from this point on have not yet attempted to be transmitted. So the TX sequence number at this point is fine as a left edge for the BAW. This has only received light testing due to some bugs I've introduced which make a fixed unicast rate no longer work (the multi-rate retry schedule is incorrectly being set.) This means that although I can trigger frame failure, it isn't predictable or guaranteed. I'll fix that in a subsequent commit and then properly test the aggregate and non-aggregate BAR pathways whilst traffic is ongoing. END