Thread (4 messages) read the whole thread 4 messages, 2 authors, 2014-08-29

Re: [PATCH] mac80211: fix offloaded BA session traffic after hw restart

From: Michal Kazior <hidden>
Date: 2014-08-29 10:03:15

On 28 August 2014 22:05, Johannes Berg [off-list ref] wrote:
On Thu, 2014-08-28 at 13:33 +0200, Michal Kazior wrote:
quoted
Instead of last_seq pick seqno of a first Rxed
frame of a given BA session.
Any way to do this without touching the RX path? It's kinda a hotpath :)
Perhaps we could push this to the driver, i.e. export
ieee80211_set_rx_ba_session_ssn() so a driver can update the
ssn/head_seq_num on its own. It would then first request an offloaded
BA and when it sees first frame for that BA it would update the ssn
before calling ieee80211_rx(). This way other drivers won't be
bothered with cruft on the Rx path. The function would have to be
called within a softirq/tasklet/timer unless reorder_lock locking goes
_bh.

I'm worried how a driver would map Rxed frames to a vifs though. I
could probably do it in ath10k indirectly via peer ids mapping but
that would involve more resources than the current approach does.

Is putting an extra if() in the Rx path really worth the concern? I'd
expect branch prediction to take care of this nicely. I guess I could
add an unlikely() too.


Michał
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help