Page MenuHomeFreeBSD

[net80211] add initial support for HT upgrade of IBSS nodes. * add ability for IBSS nodes to be upgraded when it sees HT IEs * add HT IEs to probe requests/responses and beacons * send a probe request after bringing up a node so we can...
ClosedPublic

Authored by adrian on Oct 28 2016, 2:12 AM.
Tags
None
Referenced Files
F106648006: D8365.diff
Fri, Jan 3, 8:22 AM
Unknown Object (File)
Mon, Dec 9, 4:07 PM
Unknown Object (File)
Nov 24 2024, 8:44 PM
Unknown Object (File)
Nov 22 2024, 10:10 PM
Unknown Object (File)
Nov 22 2024, 4:51 PM
Unknown Object (File)
Nov 20 2024, 10:09 PM
Unknown Object (File)
Nov 19 2024, 10:11 AM
Unknown Object (File)
Nov 13 2024, 1:58 AM
Subscribers

Details

Summary

...potentially

upgrade it to 11n if we see a probe response with HE IEs.

The 802.11 spec notes that a subset of HTINFO is allowed for IBSS, so
ensure we add it. However, there's nothing in the spec that fully
explains how nodes negotiate IBSS. Eg, we may want to not start sending
traffic until a probe request/response occurs so we don't have to
re-init the node with updated rate control information.

Diff Detail

Event Timeline

adrian retitled this revision from to [net80211] add initial support for HT upgrade of IBSS nodes. * add ability for IBSS nodes to be upgraded when it sees HT IEs * add HT IEs to probe requests/responses and beacons * send a probe request after bringing up a node so we can....
adrian updated this object.
adrian edited the test plan for this revision. (Show Details)
sys/net80211/ieee80211_output.c
2077

As I can see, this variable is never used here. Is something missing?

avos edited edge metadata.
avos added inline comments.
sys/net80211/ieee80211_output.c
2085

Still have no idea why it is referenced here

This revision is now accepted and ready to land.Nov 21 2016, 8:08 PM
sys/net80211/ieee80211_output.c
2085

Because vap->iv_bss can be changed/recycled at any time, and unless you're holding the node table lock, you're not guaranteed to get the stable version.

Now, this is also not guaranteed to get the stable version because of how the node reference counting is implemented - it's an atomic, and it's quite possible that something is freeing the node whilst you're busy getting a reference on it - but this reduces the window way way down and it's the "right" way to be getting access to iv_bss anyway.

sys/net80211/ieee80211_output.c
2085

There are no users of it (yet?)

sys/net80211/ieee80211_output.c
2085

Look at the drivers. :)

sys/net80211/ieee80211_output.c
2085

It's not used during Tx (ieee80211_raw_output() -> ic_raw_xmit()) (ath, mwl, iwn, ...)

This revision was automatically updated to reflect the committed changes.