Lines Matching defs:fast_tx
2916 * checks that are needed to get the sta->fast_tx pointer assigned, after which
2918 * disabled or the fast_tx pointer will not be set. All the conditions are seen
2921 * Once assigned, the fast_tx data structure also caches the per-packet 802.11
2934 struct ieee80211_fast_tx build = {}, *fast_tx = NULL, *old;
3145 fast_tx = kmemdup(&build, sizeof(build), GFP_ATOMIC);
3146 /* if the kmemdup fails, continue w/o fast_tx */
3147 if (!fast_tx)
3152 old = rcu_dereference_protected(sta->fast_tx,
3154 rcu_assign_pointer(sta->fast_tx, fast_tx);
3189 struct ieee80211_fast_tx *fast_tx;
3192 fast_tx = rcu_dereference_protected(sta->fast_tx,
3194 RCU_INIT_POINTER(sta->fast_tx, NULL);
3197 if (fast_tx)
3198 kfree_rcu(fast_tx, rcu_head);
3218 struct ieee80211_fast_tx *fast_tx,
3225 int hdr_len = fast_tx->hdr_len - sizeof(rfc1042_header);
3247 h_80211_src = data + fast_tx->sa_offs;
3248 h_80211_dst = data + fast_tx->da_offs;
3286 struct ieee80211_fast_tx *fast_tx,
3370 if (!ieee80211_amsdu_prepare_head(sdata, fast_tx, head))
3388 hdrlen = fast_tx->hdr_len - sizeof(rfc1042_header);
3490 struct ieee80211_fast_tx *fast_tx,
3495 int extra_head = fast_tx->hdr_len - (ETH_HLEN - 2);
3499 struct ieee80211_hdr *hdr = (void *)fast_tx->hdr;
3541 ieee80211_amsdu_aggregate(sdata, sta, fast_tx, skb))
3558 memcpy(skb->data, fast_tx->hdr, fast_tx->hdr_len);
3559 memcpy(skb->data + fast_tx->da_offs, eth.h_dest, ETH_ALEN);
3560 memcpy(skb->data + fast_tx->sa_offs, eth.h_source, ETH_ALEN);
3564 info->band = fast_tx->band;
3587 tx.key = fast_tx->key;
3605 ieee80211_xmit_fast_finish(sdata, sta, fast_tx->pn_offs,
3606 fast_tx->key, skb);
4007 struct ieee80211_fast_tx *fast_tx;
4011 fast_tx = rcu_dereference(sta->fast_tx);
4013 if (fast_tx &&
4014 ieee80211_xmit_fast(sdata, sta, fast_tx, skb))