tid_tx 143 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx) tid_tx 147 net/mac80211/agg-tx.c rcu_assign_pointer(sta->ampdu_mlme.tid_tx[tid], tid_tx); tid_tx 240 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx, u16 tid) tid_tx 248 net/mac80211/agg-tx.c if (WARN(!tid_tx, tid_tx 253 net/mac80211/agg-tx.c if (!skb_queue_empty(&tid_tx->pending)) { tid_tx 256 net/mac80211/agg-tx.c skb_queue_splice_tail_init(&tid_tx->pending, tid_tx 270 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx; tid_tx 275 net/mac80211/agg-tx.c tid_tx = rcu_dereference_protected_tid_tx(sta, tid); tid_tx 287 net/mac80211/agg-tx.c ieee80211_agg_splice_packets(sta->sdata, tid_tx, tid); tid_tx 295 net/mac80211/agg-tx.c kfree_rcu(tid_tx, rcu_head); tid_tx 302 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx; tid_tx 332 net/mac80211/agg-tx.c tid_tx = sta->ampdu_mlme.tid_start_tx[tid]; tid_tx 333 net/mac80211/agg-tx.c kfree(tid_tx); tid_tx 336 net/mac80211/agg-tx.c tid_tx = rcu_dereference_protected_tid_tx(sta, tid); tid_tx 337 net/mac80211/agg-tx.c if (!tid_tx) { tid_tx 346 net/mac80211/agg-tx.c if (test_bit(HT_AGG_STATE_STOPPING, &tid_tx->state)) { tid_tx 356 net/mac80211/agg-tx.c if (test_bit(HT_AGG_STATE_WANT_START, &tid_tx->state)) { tid_tx 360 net/mac80211/agg-tx.c kfree_rcu(tid_tx, rcu_head); tid_tx 364 net/mac80211/agg-tx.c set_bit(HT_AGG_STATE_STOPPING, &tid_tx->state); tid_tx 373 net/mac80211/agg-tx.c del_timer_sync(&tid_tx->addba_resp_timer); tid_tx 374 net/mac80211/agg-tx.c del_timer_sync(&tid_tx->session_timer); tid_tx 381 net/mac80211/agg-tx.c clear_bit(HT_AGG_STATE_OPERATIONAL, &tid_tx->state); tid_tx 398 net/mac80211/agg-tx.c tid_tx->stop_initiator = reason == AGG_STOP_PEER_REQUEST ? tid_tx 401 net/mac80211/agg-tx.c tid_tx->tx_stop = reason == AGG_STOP_LOCAL_REQUEST; tid_tx 433 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx = from_timer(tid_tx, t, addba_resp_timer); tid_tx 434 net/mac80211/agg-tx.c struct sta_info *sta = tid_tx->sta; tid_tx 435 net/mac80211/agg-tx.c u8 tid = tid_tx->tid; tid_tx 438 net/mac80211/agg-tx.c if (test_bit(HT_AGG_STATE_RESPONSE_RECEIVED, &tid_tx->state)) { tid_tx 453 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx; tid_tx 467 net/mac80211/agg-tx.c tid_tx = rcu_dereference_protected_tid_tx(sta, tid); tid_tx 474 net/mac80211/agg-tx.c clear_bit(HT_AGG_STATE_WANT_START, &tid_tx->state); tid_tx 493 net/mac80211/agg-tx.c ieee80211_agg_splice_packets(sdata, tid_tx, tid); tid_tx 500 net/mac80211/agg-tx.c kfree_rcu(tid_tx, rcu_head); tid_tx 505 net/mac80211/agg-tx.c mod_timer(&tid_tx->addba_resp_timer, jiffies + ADDBA_RESP_INTERVAL); tid_tx 528 net/mac80211/agg-tx.c tid_tx->dialog_token, params.ssn, tid_tx 529 net/mac80211/agg-tx.c buf_size, tid_tx->timeout); tid_tx 538 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx = from_timer(tid_tx, t, session_timer); tid_tx 539 net/mac80211/agg-tx.c struct sta_info *sta = tid_tx->sta; tid_tx 540 net/mac80211/agg-tx.c u8 tid = tid_tx->tid; tid_tx 543 net/mac80211/agg-tx.c if (test_bit(HT_AGG_STATE_STOPPING, &tid_tx->state)) { tid_tx 547 net/mac80211/agg-tx.c timeout = tid_tx->last_tx + TU_TO_JIFFIES(tid_tx->timeout); tid_tx 549 net/mac80211/agg-tx.c mod_timer(&tid_tx->session_timer, timeout); tid_tx 565 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx; tid_tx 648 net/mac80211/agg-tx.c tid_tx = rcu_dereference_protected_tid_tx(sta, tid); tid_tx 650 net/mac80211/agg-tx.c if (tid_tx || sta->ampdu_mlme.tid_start_tx[tid]) { tid_tx 659 net/mac80211/agg-tx.c tid_tx = kzalloc(sizeof(struct tid_ampdu_tx), GFP_ATOMIC); tid_tx 660 net/mac80211/agg-tx.c if (!tid_tx) { tid_tx 665 net/mac80211/agg-tx.c skb_queue_head_init(&tid_tx->pending); tid_tx 666 net/mac80211/agg-tx.c __set_bit(HT_AGG_STATE_WANT_START, &tid_tx->state); tid_tx 668 net/mac80211/agg-tx.c tid_tx->timeout = timeout; tid_tx 669 net/mac80211/agg-tx.c tid_tx->sta = sta; tid_tx 670 net/mac80211/agg-tx.c tid_tx->tid = tid; tid_tx 673 net/mac80211/agg-tx.c timer_setup(&tid_tx->addba_resp_timer, sta_addba_resp_timer_expired, 0); tid_tx 676 net/mac80211/agg-tx.c timer_setup(&tid_tx->session_timer, tid_tx 681 net/mac80211/agg-tx.c tid_tx->dialog_token = sta->ampdu_mlme.dialog_token_allocator; tid_tx 687 net/mac80211/agg-tx.c sta->ampdu_mlme.tid_start_tx[tid] = tid_tx; tid_tx 701 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx; tid_tx 712 net/mac80211/agg-tx.c tid_tx = rcu_dereference_protected_tid_tx(sta, tid); tid_tx 713 net/mac80211/agg-tx.c params.buf_size = tid_tx->buf_size; tid_tx 714 net/mac80211/agg-tx.c params.amsdu = tid_tx->amsdu; tid_tx 727 net/mac80211/agg-tx.c ieee80211_agg_splice_packets(sta->sdata, tid_tx, tid); tid_tx 733 net/mac80211/agg-tx.c set_bit(HT_AGG_STATE_OPERATIONAL, &tid_tx->state); tid_tx 742 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx) tid_tx 747 net/mac80211/agg-tx.c if (WARN_ON(test_and_set_bit(HT_AGG_STATE_DRV_READY, &tid_tx->state))) tid_tx 750 net/mac80211/agg-tx.c if (test_bit(HT_AGG_STATE_RESPONSE_RECEIVED, &tid_tx->state)) tid_tx 758 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx; tid_tx 772 net/mac80211/agg-tx.c tid_tx = rcu_dereference((*sta)->ampdu_mlme.tid_tx[tid]); tid_tx 774 net/mac80211/agg-tx.c if (WARN_ON(!tid_tx)) tid_tx 777 net/mac80211/agg-tx.c return tid_tx; tid_tx 786 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx; tid_tx 791 net/mac80211/agg-tx.c tid_tx = ieee80211_lookup_tid_tx(sdata, ra, tid, &sta); tid_tx 792 net/mac80211/agg-tx.c if (!tid_tx) tid_tx 795 net/mac80211/agg-tx.c set_bit(HT_AGG_STATE_START_CB, &tid_tx->state); tid_tx 821 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx; tid_tx 833 net/mac80211/agg-tx.c tid_tx = rcu_dereference_protected_tid_tx(sta, tid); tid_tx 835 net/mac80211/agg-tx.c if (!tid_tx) { tid_tx 843 net/mac80211/agg-tx.c if (test_bit(HT_AGG_STATE_STOPPING, &tid_tx->state)) { tid_tx 849 net/mac80211/agg-tx.c set_bit(HT_AGG_STATE_WANT_STOP, &tid_tx->state); tid_tx 859 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx) tid_tx 869 net/mac80211/agg-tx.c if (!test_bit(HT_AGG_STATE_STOPPING, &tid_tx->state)) { tid_tx 876 net/mac80211/agg-tx.c if (tid_tx->stop_initiator == WLAN_BACK_INITIATOR && tid_tx->tx_stop) tid_tx 895 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx; tid_tx 900 net/mac80211/agg-tx.c tid_tx = ieee80211_lookup_tid_tx(sdata, ra, tid, &sta); tid_tx 901 net/mac80211/agg-tx.c if (!tid_tx) tid_tx 904 net/mac80211/agg-tx.c set_bit(HT_AGG_STATE_STOP_CB, &tid_tx->state); tid_tx 917 net/mac80211/agg-tx.c struct tid_ampdu_tx *tid_tx; tid_tx 934 net/mac80211/agg-tx.c tid_tx = rcu_dereference_protected_tid_tx(sta, tid); tid_tx 935 net/mac80211/agg-tx.c if (!tid_tx) tid_tx 938 net/mac80211/agg-tx.c if (mgmt->u.action.u.addba_resp.dialog_token != tid_tx->dialog_token) { tid_tx 944 net/mac80211/agg-tx.c del_timer_sync(&tid_tx->addba_resp_timer); tid_tx 954 net/mac80211/agg-tx.c if (test_bit(HT_AGG_STATE_WANT_STOP, &tid_tx->state) || tid_tx 955 net/mac80211/agg-tx.c test_bit(HT_AGG_STATE_STOPPING, &tid_tx->state)) { tid_tx 971 net/mac80211/agg-tx.c &tid_tx->state)) { tid_tx 976 net/mac80211/agg-tx.c tid_tx->buf_size = buf_size; tid_tx 977 net/mac80211/agg-tx.c tid_tx->amsdu = amsdu; tid_tx 979 net/mac80211/agg-tx.c if (test_bit(HT_AGG_STATE_DRV_READY, &tid_tx->state)) tid_tx 984 net/mac80211/agg-tx.c tid_tx->timeout = tid_tx 987 net/mac80211/agg-tx.c if (tid_tx->timeout) { tid_tx 988 net/mac80211/agg-tx.c mod_timer(&tid_tx->session_timer, tid_tx 989 net/mac80211/agg-tx.c TU_TO_EXP_TIME(tid_tx->timeout)); tid_tx 990 net/mac80211/agg-tx.c tid_tx->last_tx = jiffies; tid_tx 261 net/mac80211/debugfs_sta.c struct tid_ampdu_tx *tid_tx; tid_tx 274 net/mac80211/debugfs_sta.c tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[i]); tid_tx 286 net/mac80211/debugfs_sta.c p += scnprintf(p, sizeof(buf) + buf - p, "\t\t%x", !!tid_tx); tid_tx 288 net/mac80211/debugfs_sta.c tid_tx ? tid_tx->dialog_token : 0); tid_tx 290 net/mac80211/debugfs_sta.c tid_tx ? skb_queue_len(&tid_tx->pending) : 0); tid_tx 320 net/mac80211/ht.c struct tid_ampdu_tx *tid_tx = tid_tx 323 net/mac80211/ht.c if (!tid_tx) tid_tx 326 net/mac80211/ht.c if (test_and_clear_bit(HT_AGG_STATE_STOP_CB, &tid_tx->state)) tid_tx 327 net/mac80211/ht.c ieee80211_stop_tx_ba_cb(sta, i, tid_tx); tid_tx 337 net/mac80211/ht.c struct tid_ampdu_tx *tid_tx; tid_tx 372 net/mac80211/ht.c tid_tx = sta->ampdu_mlme.tid_start_tx[tid]; tid_tx 373 net/mac80211/ht.c if (!blocked && tid_tx) { tid_tx 381 net/mac80211/ht.c if (sta->ampdu_mlme.tid_tx[tid]) tid_tx 382 net/mac80211/ht.c kfree(tid_tx); tid_tx 384 net/mac80211/ht.c ieee80211_assign_tid_tx(sta, tid, tid_tx); tid_tx 392 net/mac80211/ht.c tid_tx = rcu_dereference_protected_tid_tx(sta, tid); tid_tx 393 net/mac80211/ht.c if (!tid_tx) tid_tx 397 net/mac80211/ht.c test_and_clear_bit(HT_AGG_STATE_START_CB, &tid_tx->state)) tid_tx 398 net/mac80211/ht.c ieee80211_start_tx_ba_cb(sta, tid, tid_tx); tid_tx 399 net/mac80211/ht.c if (test_and_clear_bit(HT_AGG_STATE_WANT_STOP, &tid_tx->state)) tid_tx 402 net/mac80211/ht.c if (test_and_clear_bit(HT_AGG_STATE_STOP_CB, &tid_tx->state)) tid_tx 403 net/mac80211/ht.c ieee80211_stop_tx_ba_cb(sta, tid, tid_tx); tid_tx 1831 net/mac80211/ieee80211_i.h struct tid_ampdu_tx *tid_tx); tid_tx 1833 net/mac80211/ieee80211_i.h struct tid_ampdu_tx *tid_tx); tid_tx 876 net/mac80211/rc80211_minstrel_ht.c if (likely(sta->ampdu_mlme.tid_tx[tid])) tid_tx 87 net/mac80211/sta_info.c struct tid_ampdu_tx *tid_tx; tid_tx 142 net/mac80211/sta_info.c tid_tx = rcu_dereference_raw(sta->ampdu_mlme.tid_tx[i]); tid_tx 143 net/mac80211/sta_info.c if (!tid_tx) tid_tx 145 net/mac80211/sta_info.c ieee80211_purge_tx_queue(&local->hw, &tid_tx->pending); tid_tx 146 net/mac80211/sta_info.c kfree(tid_tx); tid_tx 279 net/mac80211/sta_info.h struct tid_ampdu_tx __rcu *tid_tx[IEEE80211_NUM_TIDS]; tid_tx 696 net/mac80211/sta_info.h struct tid_ampdu_tx *tid_tx); tid_tx 701 net/mac80211/sta_info.h return rcu_dereference_protected(sta->ampdu_mlme.tid_tx[tid], tid_tx 172 net/mac80211/status.c struct tid_ampdu_tx *tid_tx; tid_tx 174 net/mac80211/status.c tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[tid]); tid_tx 175 net/mac80211/status.c if (!tid_tx || !tid_tx->bar_pending) tid_tx 178 net/mac80211/status.c tid_tx->bar_pending = false; tid_tx 179 net/mac80211/status.c ieee80211_send_bar(&sta->sdata->vif, addr, tid, tid_tx->failed_bar_ssn); tid_tx 247 net/mac80211/status.c struct tid_ampdu_tx *tid_tx; tid_tx 249 net/mac80211/status.c tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[tid]); tid_tx 250 net/mac80211/status.c if (!tid_tx) tid_tx 253 net/mac80211/status.c tid_tx->failed_bar_ssn = ssn; tid_tx 254 net/mac80211/status.c tid_tx->bar_pending = true; tid_tx 1084 net/mac80211/tx.c struct tid_ampdu_tx *tid_tx, tid_tx 1091 net/mac80211/tx.c if (test_bit(HT_AGG_STATE_OPERATIONAL, &tid_tx->state)) { tid_tx 1094 net/mac80211/tx.c } else if (test_bit(HT_AGG_STATE_WANT_START, &tid_tx->state)) { tid_tx 1119 net/mac80211/tx.c tid_tx = rcu_dereference_protected_tid_tx(tx->sta, tid); tid_tx 1121 net/mac80211/tx.c if (!tid_tx) { tid_tx 1123 net/mac80211/tx.c } else if (test_bit(HT_AGG_STATE_OPERATIONAL, &tid_tx->state)) { tid_tx 1137 net/mac80211/tx.c __skb_queue_tail(&tid_tx->pending, skb); tid_tx 1138 net/mac80211/tx.c if (skb_queue_len(&tid_tx->pending) > STA_MAX_TX_BUFFER) tid_tx 1139 net/mac80211/tx.c purge_skb = __skb_dequeue(&tid_tx->pending); tid_tx 1149 net/mac80211/tx.c tid_tx->last_tx = jiffies; tid_tx 1205 net/mac80211/tx.c struct tid_ampdu_tx *tid_tx; tid_tx 1209 net/mac80211/tx.c tid_tx = rcu_dereference(tx->sta->ampdu_mlme.tid_tx[tid]); tid_tx 1210 net/mac80211/tx.c if (tid_tx) { tid_tx 1214 net/mac80211/tx.c tid_tx, tid); tid_tx 3436 net/mac80211/tx.c struct tid_ampdu_tx *tid_tx = NULL; tid_tx 3453 net/mac80211/tx.c tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[tid]); tid_tx 3454 net/mac80211/tx.c if (tid_tx) { tid_tx 3455 net/mac80211/tx.c if (!test_bit(HT_AGG_STATE_OPERATIONAL, &tid_tx->state)) tid_tx 3457 net/mac80211/tx.c if (tid_tx->timeout) tid_tx 3458 net/mac80211/tx.c tid_tx->last_tx = jiffies; tid_tx 3502 net/mac80211/tx.c (tid_tx ? IEEE80211_TX_CTL_AMPDU : 0);