Home
last modified time | relevance | path

Searched refs:tid_tx (Results 1 - 19 of 19) sorted by relevance

/kernel/linux/linux-6.6/net/mac80211/
H A Dagg-tx.c143 struct tid_ampdu_tx *tid_tx) in ieee80211_assign_tid_tx()
147 rcu_assign_pointer(sta->ampdu_mlme.tid_tx[tid], tid_tx); in ieee80211_assign_tid_tx()
242 struct tid_ampdu_tx *tid_tx, u16 tid) in __acquires()
250 if (WARN(!tid_tx, in __acquires()
255 if (!skb_queue_empty(&tid_tx->pending)) { in __acquires()
258 skb_queue_splice_tail_init(&tid_tx->pending, in __acquires()
272 struct tid_ampdu_tx *tid_tx; in ieee80211_remove_tid_tx() local
277 tid_tx = rcu_dereference_protected_tid_tx(sta, tid); in ieee80211_remove_tid_tx()
285 * guaranteeing that no packets go to the tid_tx pendin in ieee80211_remove_tid_tx()
142 ieee80211_assign_tid_tx(struct sta_info *sta, int tid, struct tid_ampdu_tx *tid_tx) ieee80211_assign_tid_tx() argument
303 struct tid_ampdu_tx *tid_tx; ___ieee80211_stop_tx_ba_session() local
434 struct tid_ampdu_tx *tid_tx = from_timer(tid_tx, t, addba_resp_timer); sta_addba_resp_timer_expired() local
452 ieee80211_send_addba_with_timeout(struct sta_info *sta, struct tid_ampdu_tx *tid_tx) ieee80211_send_addba_with_timeout() argument
498 struct tid_ampdu_tx *tid_tx; ieee80211_tx_ba_session_handle_start() local
567 struct tid_ampdu_tx *tid_tx; ieee80211_refresh_tx_agg_session_timer() local
586 struct tid_ampdu_tx *tid_tx = from_timer(tid_tx, t, session_timer); sta_tx_agg_session_timer_expired() local
613 struct tid_ampdu_tx *tid_tx; ieee80211_start_tx_ba_session() local
758 struct tid_ampdu_tx *tid_tx; ieee80211_agg_tx_operational() local
798 ieee80211_start_tx_ba_cb(struct sta_info *sta, int tid, struct tid_ampdu_tx *tid_tx) ieee80211_start_tx_ba_cb() argument
827 struct tid_ampdu_tx *tid_tx; ieee80211_lookup_tid_tx() local
855 struct tid_ampdu_tx *tid_tx; ieee80211_start_tx_ba_cb_irqsafe() local
890 struct tid_ampdu_tx *tid_tx; ieee80211_stop_tx_ba_session() local
927 ieee80211_stop_tx_ba_cb(struct sta_info *sta, int tid, struct tid_ampdu_tx *tid_tx) ieee80211_stop_tx_ba_cb() argument
969 struct tid_ampdu_tx *tid_tx; ieee80211_stop_tx_ba_cb_irqsafe() local
991 struct tid_ampdu_tx *tid_tx; ieee80211_process_addba_resp() local
[all...]
H A Dht.c334 * the BA session, so handle it to properly clean tid_tx data. in ieee80211_sta_tear_down_BA_sessions()
341 struct tid_ampdu_tx *tid_tx = in ieee80211_sta_tear_down_BA_sessions() local
344 if (!tid_tx) in ieee80211_sta_tear_down_BA_sessions()
347 if (test_and_clear_bit(HT_AGG_STATE_STOP_CB, &tid_tx->state)) in ieee80211_sta_tear_down_BA_sessions()
348 ieee80211_stop_tx_ba_cb(sta, i, tid_tx); in ieee80211_sta_tear_down_BA_sessions()
358 struct tid_ampdu_tx *tid_tx; in ieee80211_ba_session_work() local
393 tid_tx = sta->ampdu_mlme.tid_start_tx[tid]; in ieee80211_ba_session_work()
394 if (!blocked && tid_tx) { in ieee80211_ba_session_work()
427 * Assign it over to the normal tid_tx array in ieee80211_ba_session_work()
433 if (sta->ampdu_mlme.tid_tx[ti in ieee80211_ba_session_work()
[all...]
H A Dstatus.c174 struct tid_ampdu_tx *tid_tx; in ieee80211_check_pending_bar() local
176 tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[tid]); in ieee80211_check_pending_bar()
177 if (!tid_tx || !tid_tx->bar_pending) in ieee80211_check_pending_bar()
180 tid_tx->bar_pending = false; in ieee80211_check_pending_bar()
181 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[ti in ieee80211_set_bar_pending()
[all...]
H A Dsta_info.h263 * to tid_tx[idx], which are protected by the sta spinlock)
277 * @tid_tx: aggregation info for Tx per TID
295 struct tid_ampdu_tx __rcu *tid_tx[IEEE80211_NUM_TIDS]; member
797 struct tid_ampdu_tx *tid_tx);
802 return rcu_dereference_protected(sta->ampdu_mlme.tid_tx[tid], in rcu_dereference_protected_tid_tx()
H A Dtx.c1110 struct tid_ampdu_tx *tid_tx, in ieee80211_tx_prep_agg()
1117 if (test_bit(HT_AGG_STATE_OPERATIONAL, &tid_tx->state)) { in ieee80211_tx_prep_agg()
1119 } else if (test_bit(HT_AGG_STATE_WANT_START, &tid_tx->state)) { in ieee80211_tx_prep_agg()
1144 tid_tx = rcu_dereference_protected_tid_tx(tx->sta, tid); in ieee80211_tx_prep_agg()
1146 if (!tid_tx) { in ieee80211_tx_prep_agg()
1148 } else if (test_bit(HT_AGG_STATE_OPERATIONAL, &tid_tx->state)) { in ieee80211_tx_prep_agg()
1161 __skb_queue_tail(&tid_tx->pending, skb); in ieee80211_tx_prep_agg()
1162 if (skb_queue_len(&tid_tx->pending) > STA_MAX_TX_BUFFER) in ieee80211_tx_prep_agg()
1163 purge_skb = __skb_dequeue(&tid_tx->pending); in ieee80211_tx_prep_agg()
1173 tid_tx in ieee80211_tx_prep_agg()
1107 ieee80211_tx_prep_agg(struct ieee80211_tx_data *tx, struct sk_buff *skb, struct ieee80211_tx_info *info, struct tid_ampdu_tx *tid_tx, int tid) ieee80211_tx_prep_agg() argument
1251 struct tid_ampdu_tx *tid_tx; ieee80211_tx_prepare() local
3741 struct tid_ampdu_tx *tid_tx = NULL; ieee80211_xmit_fast() local
4583 struct tid_ampdu_tx *tid_tx; ieee80211_8023_xmit() local
[all...]
H A Dmesh.c771 struct tid_ampdu_tx *tid_tx; in ieee80211_mesh_xmit_fast() local
815 tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[tid]); in ieee80211_mesh_xmit_fast()
816 if (tid_tx) { in ieee80211_mesh_xmit_fast()
817 if (!test_bit(HT_AGG_STATE_OPERATIONAL, &tid_tx->state)) in ieee80211_mesh_xmit_fast()
819 if (tid_tx->timeout) in ieee80211_mesh_xmit_fast()
820 tid_tx->last_tx = jiffies; in ieee80211_mesh_xmit_fast()
847 __ieee80211_xmit_fast(sdata, sta, &entry->fast_tx, skb, tid_tx, in ieee80211_mesh_xmit_fast()
H A Ddebugfs_sta.c323 struct tid_ampdu_tx *tid_tx; in sta_agg_status_read() local
342 tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[i]); in sta_agg_status_read()
354 p += scnprintf(p, bufsz + buf - p, "\t\t%x", !!tid_tx); in sta_agg_status_read()
356 tid_tx ? tid_tx->dialog_token : 0); in sta_agg_status_read()
358 tid_tx ? skb_queue_len(&tid_tx->pending) : 0); in sta_agg_status_read()
H A Dsta_info.c120 struct tid_ampdu_tx *tid_tx; in __cleanup_single_sta() local
173 tid_tx = rcu_dereference_raw(sta->ampdu_mlme.tid_tx[i]); in __cleanup_single_sta()
174 if (!tid_tx) in __cleanup_single_sta()
176 ieee80211_purge_tx_queue(&local->hw, &tid_tx->pending); in __cleanup_single_sta()
177 kfree(tid_tx); in __cleanup_single_sta()
H A Drx.c2731 struct tid_ampdu_tx *tid_tx; in ieee80211_rx_mesh_fast_forward() local
2752 tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[tid]); in ieee80211_rx_mesh_fast_forward()
2753 if (tid_tx) { in ieee80211_rx_mesh_fast_forward()
2754 if (!test_bit(HT_AGG_STATE_OPERATIONAL, &tid_tx->state)) in ieee80211_rx_mesh_fast_forward()
2757 if (tid_tx->timeout) in ieee80211_rx_mesh_fast_forward()
2758 tid_tx->last_tx = jiffies; in ieee80211_rx_mesh_fast_forward()
2773 __ieee80211_xmit_fast(sdata, sta, &entry->fast_tx, skb, tid_tx, in ieee80211_rx_mesh_fast_forward()
H A Dieee80211_i.h2129 struct tid_ampdu_tx *tid_tx);
2131 struct tid_ampdu_tx *tid_tx);
/kernel/linux/linux-5.10/net/mac80211/
H A Dagg-tx.c143 struct tid_ampdu_tx *tid_tx) in ieee80211_assign_tid_tx()
147 rcu_assign_pointer(sta->ampdu_mlme.tid_tx[tid], tid_tx); in ieee80211_assign_tid_tx()
242 struct tid_ampdu_tx *tid_tx, u16 tid) in __acquires()
250 if (WARN(!tid_tx, in __acquires()
255 if (!skb_queue_empty(&tid_tx->pending)) { in __acquires()
258 skb_queue_splice_tail_init(&tid_tx->pending, in __acquires()
272 struct tid_ampdu_tx *tid_tx; in ieee80211_remove_tid_tx() local
277 tid_tx = rcu_dereference_protected_tid_tx(sta, tid); in ieee80211_remove_tid_tx()
285 * guaranteeing that no packets go to the tid_tx pendin in ieee80211_remove_tid_tx()
142 ieee80211_assign_tid_tx(struct sta_info *sta, int tid, struct tid_ampdu_tx *tid_tx) ieee80211_assign_tid_tx() argument
303 struct tid_ampdu_tx *tid_tx; ___ieee80211_stop_tx_ba_session() local
434 struct tid_ampdu_tx *tid_tx = from_timer(tid_tx, t, addba_resp_timer); sta_addba_resp_timer_expired() local
452 ieee80211_send_addba_with_timeout(struct sta_info *sta, struct tid_ampdu_tx *tid_tx) ieee80211_send_addba_with_timeout() argument
492 struct tid_ampdu_tx *tid_tx; ieee80211_tx_ba_session_handle_start() local
565 struct tid_ampdu_tx *tid_tx = from_timer(tid_tx, t, session_timer); sta_tx_agg_session_timer_expired() local
592 struct tid_ampdu_tx *tid_tx; ieee80211_start_tx_ba_session() local
737 struct tid_ampdu_tx *tid_tx; ieee80211_agg_tx_operational() local
777 ieee80211_start_tx_ba_cb(struct sta_info *sta, int tid, struct tid_ampdu_tx *tid_tx) ieee80211_start_tx_ba_cb() argument
800 struct tid_ampdu_tx *tid_tx; ieee80211_lookup_tid_tx() local
828 struct tid_ampdu_tx *tid_tx; ieee80211_start_tx_ba_cb_irqsafe() local
863 struct tid_ampdu_tx *tid_tx; ieee80211_stop_tx_ba_session() local
900 ieee80211_stop_tx_ba_cb(struct sta_info *sta, int tid, struct tid_ampdu_tx *tid_tx) ieee80211_stop_tx_ba_cb() argument
942 struct tid_ampdu_tx *tid_tx; ieee80211_stop_tx_ba_cb_irqsafe() local
964 struct tid_ampdu_tx *tid_tx; ieee80211_process_addba_resp() local
[all...]
H A Dht.c319 * the BA session, so handle it to properly clean tid_tx data. in ieee80211_sta_tear_down_BA_sessions()
326 struct tid_ampdu_tx *tid_tx = in ieee80211_sta_tear_down_BA_sessions() local
329 if (!tid_tx) in ieee80211_sta_tear_down_BA_sessions()
332 if (test_and_clear_bit(HT_AGG_STATE_STOP_CB, &tid_tx->state)) in ieee80211_sta_tear_down_BA_sessions()
333 ieee80211_stop_tx_ba_cb(sta, i, tid_tx); in ieee80211_sta_tear_down_BA_sessions()
343 struct tid_ampdu_tx *tid_tx; in ieee80211_ba_session_work() local
378 tid_tx = sta->ampdu_mlme.tid_start_tx[tid]; in ieee80211_ba_session_work()
379 if (!blocked && tid_tx) { in ieee80211_ba_session_work()
381 * Assign it over to the normal tid_tx array in ieee80211_ba_session_work()
387 if (sta->ampdu_mlme.tid_tx[ti in ieee80211_ba_session_work()
[all...]
H A Dstatus.c173 struct tid_ampdu_tx *tid_tx; in ieee80211_check_pending_bar() local
175 tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[tid]); in ieee80211_check_pending_bar()
176 if (!tid_tx || !tid_tx->bar_pending) in ieee80211_check_pending_bar()
179 tid_tx->bar_pending = false; in ieee80211_check_pending_bar()
180 ieee80211_send_bar(&sta->sdata->vif, addr, tid, tid_tx->failed_bar_ssn); in ieee80211_check_pending_bar()
236 struct tid_ampdu_tx *tid_tx; in ieee80211_set_bar_pending() local
238 tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[ti in ieee80211_set_bar_pending()
[all...]
H A Dtx.c1091 struct tid_ampdu_tx *tid_tx, in ieee80211_tx_prep_agg()
1098 if (test_bit(HT_AGG_STATE_OPERATIONAL, &tid_tx->state)) { in ieee80211_tx_prep_agg()
1101 } else if (test_bit(HT_AGG_STATE_WANT_START, &tid_tx->state)) { in ieee80211_tx_prep_agg()
1126 tid_tx = rcu_dereference_protected_tid_tx(tx->sta, tid); in ieee80211_tx_prep_agg()
1128 if (!tid_tx) { in ieee80211_tx_prep_agg()
1130 } else if (test_bit(HT_AGG_STATE_OPERATIONAL, &tid_tx->state)) { in ieee80211_tx_prep_agg()
1144 __skb_queue_tail(&tid_tx->pending, skb); in ieee80211_tx_prep_agg()
1145 if (skb_queue_len(&tid_tx->pending) > STA_MAX_TX_BUFFER) in ieee80211_tx_prep_agg()
1146 purge_skb = __skb_dequeue(&tid_tx->pending); in ieee80211_tx_prep_agg()
1156 tid_tx in ieee80211_tx_prep_agg()
1088 ieee80211_tx_prep_agg(struct ieee80211_tx_data *tx, struct sk_buff *skb, struct ieee80211_tx_info *info, struct tid_ampdu_tx *tid_tx, int tid) ieee80211_tx_prep_agg() argument
1212 struct tid_ampdu_tx *tid_tx; ieee80211_tx_prepare() local
3502 struct tid_ampdu_tx *tid_tx = NULL; ieee80211_xmit_fast() local
4251 struct tid_ampdu_tx *tid_tx; ieee80211_8023_xmit() local
[all...]
H A Ddebugfs_sta.c320 struct tid_ampdu_tx *tid_tx; in sta_agg_status_read() local
333 tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[i]); in sta_agg_status_read()
345 p += scnprintf(p, sizeof(buf) + buf - p, "\t\t%x", !!tid_tx); in sta_agg_status_read()
347 tid_tx ? tid_tx->dialog_token : 0); in sta_agg_status_read()
349 tid_tx ? skb_queue_len(&tid_tx->pending) : 0); in sta_agg_status_read()
H A Dsta_info.h259 * to tid_tx[idx], which are protected by the sta spinlock)
273 * @tid_tx: aggregation info for Tx per TID
291 struct tid_ampdu_tx __rcu *tid_tx[IEEE80211_NUM_TIDS]; member
742 struct tid_ampdu_tx *tid_tx);
747 return rcu_dereference_protected(sta->ampdu_mlme.tid_tx[tid], in rcu_dereference_protected_tid_tx()
H A Dsta_info.c87 struct tid_ampdu_tx *tid_tx; in __cleanup_single_sta() local
142 tid_tx = rcu_dereference_raw(sta->ampdu_mlme.tid_tx[i]); in __cleanup_single_sta()
143 if (!tid_tx) in __cleanup_single_sta()
145 ieee80211_purge_tx_queue(&local->hw, &tid_tx->pending); in __cleanup_single_sta()
146 kfree(tid_tx); in __cleanup_single_sta()
H A Dieee80211_i.h1890 struct tid_ampdu_tx *tid_tx);
1892 struct tid_ampdu_tx *tid_tx);
H A Drc80211_minstrel_ht.c879 if (likely(sta->ampdu_mlme.tid_tx[tid])) in minstrel_aggr_check()

Completed in 42 milliseconds