Page MenuHomeFreeBSD

run: enable seqno offload
ClosedPublic

Authored by adrian on Jun 9 2025, 2:13 AM.
Referenced Files
Unknown Object (File)
Sun, Oct 19, 9:53 AM
Unknown Object (File)
Tue, Oct 14, 5:47 AM
Unknown Object (File)
Mon, Oct 13, 6:24 PM
Unknown Object (File)
Sat, Oct 11, 8:05 AM
Unknown Object (File)
Sat, Oct 11, 3:20 AM
Unknown Object (File)
Wed, Oct 8, 2:44 PM
Unknown Object (File)
Mon, Oct 6, 2:09 AM
Unknown Object (File)
Fri, Oct 3, 8:45 AM
Subscribers

Details

Reviewers
None
Group Reviewers
wireless
Commits
rGe76e631bb0e9: run: enable seqno offload
Summary

Enable sequence number offload.

This should both enable the sequence number offloading and disable
the net80211 TX lock from being acquired/released/checked.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

adrian requested review of this revision.Jun 9 2025, 2:13 AM

I know not much about tun internals; it looks okay but you need to know and test.

On 2nd though, nothing guards against ieee80211_output_seqno_assign() being called twice. Can we be sure net80211 in no case has a seq# assigned to wh? Or should ieee80211_output_seqno_assign() assert that if tid_arg is -1 that tid from from the frame is 0?

I just leave this comment here; it came to my mind based on the next review; I also think we should carefully define what IEEE80211_FEXT_SEQNO_OFFLOAD means with a comment in net80211 as it does not necessarily mean hardware offload like others but could also mean driver offload?

In D50747#1188607, @bz wrote:

On 2nd though, nothing guards against ieee80211_output_seqno_assign() being called twice. Can we be sure net80211 in no case has a seq# assigned to wh? Or should ieee80211_output_seqno_assign() assert that if tid_arg is -1 that tid from from the frame is 0?

I just leave this comment here; it came to my mind based on the next review; I also think we should carefully define what IEEE80211_FEXT_SEQNO_OFFLOAD means with a comment in net80211 as it does not necessarily mean hardware offload like others but could also mean driver offload?

as I thought I said somewhere else, its not a problem outside of ADDBA sessions. It's the same as someone assigning it twice.

We /do/ have four more bits now available in the mbuf for seqno flags, as it's a 16 bit mbuf field and we're using 12 bits (and masking off the others.) So, in THEORY, we could set a bit to say it's been assigned and double check it later!

This revision was not accepted when it landed; it landed in state Needs Review.Sep 9 2025, 1:53 AM
This revision was automatically updated to reflect the committed changes.