Date: Thu, 29 Aug 2013 07:01:06 -0700 From: Adrian Chadd <adrian@freebsd.org> To: "freebsd-wireless@freebsd.org" <freebsd-wireless@freebsd.org> Subject: [net80211] API change - ieee80211_tx_complete() Message-ID: <CAJ-Vmo=i=uYkrhZPGOC-MVrHXmSf%2BW0B_FD7V8Z%2B_pBJWUtVxg@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
Hi all, As part of some eventual software transmit path work that I'm slowly chipping away of in -HEAD, I've created a new function call which replaces the following: if (node) { if (m->m_flags & M_TXCB) <call ieee80211 callback> ieee80211_free_node(ni) } m_freem(m) Now, the _eventual_ path for this is to push all driver 802.11 frame free (in all conditions!) back to the driver via this method so net80211 can handle software queuing, retransmission and aggregation. But to do this, we have to modify all the drivers to call ieee80211_tx_complete() from _outside_ its normal locks. Now, doing that right now (just before 10!) is a bit much to ask so no, I'm not yet going down that path. But I would like to convert the drivers over to call this rather than manually do the above code. I've done ath(4) and iwn(4). If you have another wireless card then please update it to call the new function and post a diff. I'd like to get all of these drivers converted over ASAP so I can start the second part of my net80211 software queue changes. Thanks! -adrian
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-Vmo=i=uYkrhZPGOC-MVrHXmSf%2BW0B_FD7V8Z%2B_pBJWUtVxg>