Lines Matching defs:fast_tx

2988  * checks that are needed to get the sta->fast_tx pointer assigned, after which
2990 * disabled or the fast_tx pointer will not be set. All the conditions are seen
2993 * Once assigned, the fast_tx data structure also caches the per-packet 802.11
3006 struct ieee80211_fast_tx build = {}, *fast_tx = NULL, *old;
3240 fast_tx = kmemdup(&build, sizeof(build), GFP_ATOMIC);
3241 /* if the kmemdup fails, continue w/o fast_tx */
3245 old = rcu_dereference_protected(sta->fast_tx,
3247 rcu_assign_pointer(sta->fast_tx, fast_tx);
3282 struct ieee80211_fast_tx *fast_tx;
3285 fast_tx = rcu_dereference_protected(sta->fast_tx,
3287 RCU_INIT_POINTER(sta->fast_tx, NULL);
3290 if (fast_tx)
3291 kfree_rcu(fast_tx, rcu_head);
3311 struct ieee80211_fast_tx *fast_tx,
3318 int hdr_len = fast_tx->hdr_len - sizeof(rfc1042_header);
3340 h_80211_src = data + fast_tx->sa_offs;
3341 h_80211_dst = data + fast_tx->da_offs;
3379 struct ieee80211_fast_tx *fast_tx,
3469 if (!ieee80211_amsdu_prepare_head(sdata, fast_tx, head))
3487 hdrlen = fast_tx->hdr_len - sizeof(rfc1042_header);
3648 struct ieee80211_fast_tx *fast_tx,
3653 struct ieee80211_hdr *hdr = (void *)fast_tx->hdr;
3658 int extra_head = fast_tx->hdr_len - (ETH_HLEN - 2);
3665 ieee80211_amsdu_aggregate(sdata, sta, fast_tx, skb, da, sa))
3679 memcpy(skb->data, fast_tx->hdr, fast_tx->hdr_len);
3680 memcpy(skb->data + fast_tx->da_offs, da, ETH_ALEN);
3681 memcpy(skb->data + fast_tx->sa_offs, sa, ETH_ALEN);
3685 info->band = fast_tx->band;
3710 tx.key = fast_tx->key;
3716 r = ieee80211_xmit_fast_finish(sdata, sta, fast_tx->pn_offs,
3717 fast_tx->key, &tx);
3736 struct ieee80211_fast_tx *fast_tx,
3740 struct ieee80211_hdr *hdr = (void *)fast_tx->hdr;
3778 __ieee80211_xmit_fast(sdata, sta, fast_tx, skb, tid_tx,
4284 struct ieee80211_fast_tx *fast_tx;
4286 fast_tx = rcu_dereference(sta->fast_tx);
4288 if (fast_tx &&
4289 ieee80211_xmit_fast(sdata, sta, fast_tx, skb))