Lines Matching refs:fast_tx
2863 struct ieee80211_fast_tx build = {}, *fast_tx = NULL, *old; in ieee80211_check_fast_xmit() local
3074 fast_tx = kmemdup(&build, sizeof(build), GFP_ATOMIC); in ieee80211_check_fast_xmit()
3076 if (!fast_tx) in ieee80211_check_fast_xmit()
3081 old = rcu_dereference_protected(sta->fast_tx, in ieee80211_check_fast_xmit()
3083 rcu_assign_pointer(sta->fast_tx, fast_tx); in ieee80211_check_fast_xmit()
3118 struct ieee80211_fast_tx *fast_tx; in ieee80211_clear_fast_xmit() local
3121 fast_tx = rcu_dereference_protected(sta->fast_tx, in ieee80211_clear_fast_xmit()
3123 RCU_INIT_POINTER(sta->fast_tx, NULL); in ieee80211_clear_fast_xmit()
3126 if (fast_tx) in ieee80211_clear_fast_xmit()
3127 kfree_rcu(fast_tx, rcu_head); in ieee80211_clear_fast_xmit()
3147 struct ieee80211_fast_tx *fast_tx, in ieee80211_amsdu_prepare_head() argument
3154 int hdr_len = fast_tx->hdr_len - sizeof(rfc1042_header); in ieee80211_amsdu_prepare_head()
3174 h_80211_src = data + fast_tx->sa_offs; in ieee80211_amsdu_prepare_head()
3175 h_80211_dst = data + fast_tx->da_offs; in ieee80211_amsdu_prepare_head()
3213 struct ieee80211_fast_tx *fast_tx, in ieee80211_amsdu_aggregate() argument
3297 if (!ieee80211_amsdu_prepare_head(sdata, fast_tx, head)) in ieee80211_amsdu_aggregate()
3307 hdrlen = fast_tx->hdr_len - sizeof(rfc1042_header); in ieee80211_amsdu_aggregate()
3409 struct ieee80211_fast_tx *fast_tx, in ieee80211_xmit_fast() argument
3414 int extra_head = fast_tx->hdr_len - (ETH_HLEN - 2); in ieee80211_xmit_fast()
3418 struct ieee80211_hdr *hdr = (void *)fast_tx->hdr; in ieee80211_xmit_fast()
3460 ieee80211_amsdu_aggregate(sdata, sta, fast_tx, skb)) in ieee80211_xmit_fast()
3477 memcpy(skb->data, fast_tx->hdr, fast_tx->hdr_len); in ieee80211_xmit_fast()
3478 memcpy(skb->data + fast_tx->da_offs, eth.h_dest, ETH_ALEN); in ieee80211_xmit_fast()
3479 memcpy(skb->data + fast_tx->sa_offs, eth.h_source, ETH_ALEN); in ieee80211_xmit_fast()
3483 info->band = fast_tx->band; in ieee80211_xmit_fast()
3506 tx.key = fast_tx->key; in ieee80211_xmit_fast()
3524 ieee80211_xmit_fast_finish(sdata, sta, fast_tx->pn_offs, in ieee80211_xmit_fast()
3525 fast_tx->key, skb); in ieee80211_xmit_fast()
3835 struct ieee80211_fast_tx *fast_tx; in __ieee80211_subif_start_xmit() local
3839 fast_tx = rcu_dereference(sta->fast_tx); in __ieee80211_subif_start_xmit()
3841 if (fast_tx && in __ieee80211_subif_start_xmit()
3842 ieee80211_xmit_fast(sdata, sta, fast_tx, skb)) in __ieee80211_subif_start_xmit()