Home
last modified time | relevance | path

Searched refs:tid_tx (Results 1 – 8 of 8) sorted by relevance

/linux-4.4.14/net/mac80211/
Dagg-tx.c146 struct tid_ampdu_tx *tid_tx) in ieee80211_assign_tid_tx() argument
150 rcu_assign_pointer(sta->ampdu_mlme.tid_tx[tid], tid_tx); in ieee80211_assign_tid_tx()
235 struct tid_ampdu_tx *tid_tx, u16 tid) in __acquires()
243 if (WARN(!tid_tx, in __acquires()
248 if (!skb_queue_empty(&tid_tx->pending)) { in __acquires()
251 skb_queue_splice_tail_init(&tid_tx->pending, in __acquires()
265 struct tid_ampdu_tx *tid_tx; in ieee80211_remove_tid_tx() local
270 tid_tx = rcu_dereference_protected_tid_tx(sta, tid); in ieee80211_remove_tid_tx()
282 ieee80211_agg_splice_packets(sta->sdata, tid_tx, tid); in ieee80211_remove_tid_tx()
290 kfree_rcu(tid_tx, rcu_head); in ieee80211_remove_tid_tx()
[all …]
Dht.c302 struct tid_ampdu_tx *tid_tx; in ieee80211_ba_session_work() local
329 tid_tx = sta->ampdu_mlme.tid_start_tx[tid]; in ieee80211_ba_session_work()
330 if (tid_tx) { in ieee80211_ba_session_work()
338 if (sta->ampdu_mlme.tid_tx[tid]) in ieee80211_ba_session_work()
339 kfree(tid_tx); in ieee80211_ba_session_work()
341 ieee80211_assign_tid_tx(sta, tid, tid_tx); in ieee80211_ba_session_work()
349 tid_tx = rcu_dereference_protected_tid_tx(sta, tid); in ieee80211_ba_session_work()
350 if (tid_tx && test_and_clear_bit(HT_AGG_STATE_WANT_STOP, in ieee80211_ba_session_work()
351 &tid_tx->state)) in ieee80211_ba_session_work()
Dstatus.c169 struct tid_ampdu_tx *tid_tx; in ieee80211_check_pending_bar() local
171 tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[tid]); in ieee80211_check_pending_bar()
172 if (!tid_tx || !tid_tx->bar_pending) in ieee80211_check_pending_bar()
175 tid_tx->bar_pending = false; in ieee80211_check_pending_bar()
176 ieee80211_send_bar(&sta->sdata->vif, addr, tid, tid_tx->failed_bar_ssn); in ieee80211_check_pending_bar()
234 struct tid_ampdu_tx *tid_tx; in ieee80211_set_bar_pending() local
236 tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[tid]); in ieee80211_set_bar_pending()
237 if (!tid_tx) in ieee80211_set_bar_pending()
240 tid_tx->failed_bar_ssn = ssn; in ieee80211_set_bar_pending()
241 tid_tx->bar_pending = true; in ieee80211_set_bar_pending()
Ddebugfs_sta.c119 struct tid_ampdu_tx *tid_tx; in sta_agg_status_read() local
130 tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[i]); in sta_agg_status_read()
139 p += scnprintf(p, sizeof(buf) + buf - p, "\t\t%x", !!tid_tx); in sta_agg_status_read()
141 tid_tx ? tid_tx->dialog_token : 0); in sta_agg_status_read()
143 tid_tx ? skb_queue_len(&tid_tx->pending) : 0); in sta_agg_status_read()
Dsta_info.h238 struct tid_ampdu_tx __rcu *tid_tx[IEEE80211_NUM_TIDS]; member
566 struct tid_ampdu_tx *tid_tx);
571 return rcu_dereference_protected(sta->ampdu_mlme.tid_tx[tid], in rcu_dereference_protected_tid_tx()
Dtx.c1071 struct tid_ampdu_tx *tid_tx, in ieee80211_tx_prep_agg() argument
1078 if (test_bit(HT_AGG_STATE_OPERATIONAL, &tid_tx->state)) { in ieee80211_tx_prep_agg()
1081 } else if (test_bit(HT_AGG_STATE_WANT_START, &tid_tx->state)) { in ieee80211_tx_prep_agg()
1106 tid_tx = rcu_dereference_protected_tid_tx(tx->sta, tid); in ieee80211_tx_prep_agg()
1108 if (!tid_tx) { in ieee80211_tx_prep_agg()
1110 } else if (test_bit(HT_AGG_STATE_OPERATIONAL, &tid_tx->state)) { in ieee80211_tx_prep_agg()
1120 __skb_queue_tail(&tid_tx->pending, skb); in ieee80211_tx_prep_agg()
1121 if (skb_queue_len(&tid_tx->pending) > STA_MAX_TX_BUFFER) in ieee80211_tx_prep_agg()
1122 purge_skb = __skb_dequeue(&tid_tx->pending); in ieee80211_tx_prep_agg()
1131 if (reset_agg_timer && tid_tx->timeout) in ieee80211_tx_prep_agg()
[all …]
Dsta_info.c88 struct tid_ampdu_tx *tid_tx; in __cleanup_single_sta() local
140 tid_tx = rcu_dereference_raw(sta->ampdu_mlme.tid_tx[i]); in __cleanup_single_sta()
141 if (!tid_tx) in __cleanup_single_sta()
143 ieee80211_purge_tx_queue(&local->hw, &tid_tx->pending); in __cleanup_single_sta()
144 kfree(tid_tx); in __cleanup_single_sta()
Drc80211_minstrel_ht.c691 if (likely(sta->ampdu_mlme.tid_tx[tid])) in minstrel_aggr_check()