STRUCT IEEE80211_FAST_RX(9)
π struct ieee80211_fast_rx(9) β the kernel API manual, but make it make sense
okay so bestie, welcome to the struct ieee80211_fast_rx(9) page β¨ this is the Kernel API Manual, and we're talking about one specific little struct, so buckle up π
π¦ NAME π¦
struct ieee80211_fast_rx β literally the RX fastpath information. that's the whole vibe. it's the struct that holds the deets the receive fastpath needs to not have to think too hard π
β¨ SYNOPSIS β¨
here's the whole thing, character for character, no cap:
struct ieee80211_fast_rx {
struct net_device *dev;
enum nl80211_iftype vif_type;
u8 vif_addr[ETH_ALEN];
u8 rfc1042_hdr[6];
__be16 control_port_protocol;
__le16 expected_ds_bits;
u8 icv_len;
u8 key:1, internal_forward:1, uses_rss:1;
u8 da_offs, sa_offs;
struct rcu_head rcu_head;
};
πΈ Members πΈ
like, one by one, here's what each field is giving π
devβ the netdevice, for reporting the SKB π«Άvif_typeβ the (P2P-less) interface type of the original sdata, akasdata->vif.type. yes, P2P-less, that's the note, keep it πvif_addrβ the interface addressrfc1042_hdrβ a copy of the RFC 1042 SNAP header, kept around so it's already in cache. obsessed with a pre-cached header ngl βcontrol_port_protocolβ the control port protocol, copied over from sdataexpected_ds_bitsβ the from/to DS bits that are expected πicv_lenβ length of the MIC, if there is onekeyβ a bool indicating encryption is expected (key is set) π₯internal_forwardβ forward frames internally on AP/VLAN type interfacesuses_rssβ a copy of theUSES_RSShw flagda_offsβ offset of the DA in the header (for header conversion) π―sa_offsβ offset of the SA in the header (for header conversion) π―rcu_headβ the RCU head, for freeing this structure. bye bestie, RCU will handle the cleanup π
π§ SEE ALSO π§
go read these next, iykyk π
- Kernel file
./net/mac80211/sta_info.h enum ieee80211_sta_info_flags(9)struct tid_ampdu_tx(9)struct tid_ampdu_rx(9)struct sta_ampdu_mlme(9)struct ieee80211_fast_tx(9)struct mesh_sta(9)struct link_sta_info(9)struct ieee80211_sta_removed_link_stats(9)struct sta_info(9)__sta_info_flush(9)sta_info_flush(9)
this page lives in ./net/mac80211 and it's dated October 2026 β that's the source and the date, mwah π
and that's the whole page, bestie. struct ieee80211_fast_rx(9) ate and left no crumbs ππ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms