Lines Matching refs:sta
317 if (tx->sta) in ieee80211_tx_h_check_assoc()
318 assoc = test_sta_flag(tx->sta, WLAN_STA_ASSOC); in ieee80211_tx_h_check_assoc()
352 struct sta_info *sta; in purge_old_ps_buffers() local
376 list_for_each_entry_rcu(sta, &local->sta_list, list) { in purge_old_ps_buffers()
380 skb = skb_dequeue(&sta->ps_tx_buf[ac]); in purge_old_ps_buffers()
381 total += skb_queue_len(&sta->ps_tx_buf[ac]); in purge_old_ps_buffers()
459 static int ieee80211_use_mfp(__le16 fc, struct sta_info *sta, in ieee80211_use_mfp() argument
465 if (sta == NULL || !test_sta_flag(sta, WLAN_STA_MFP)) in ieee80211_use_mfp()
477 struct sta_info *sta = tx->sta; in ieee80211_tx_h_unicast_ps_buf() local
482 if (unlikely(!sta)) in ieee80211_tx_h_unicast_ps_buf()
485 if (unlikely((test_sta_flag(sta, WLAN_STA_PS_STA) || in ieee80211_tx_h_unicast_ps_buf()
486 test_sta_flag(sta, WLAN_STA_PS_DRIVER) || in ieee80211_tx_h_unicast_ps_buf()
487 test_sta_flag(sta, WLAN_STA_PS_DELIVER)) && in ieee80211_tx_h_unicast_ps_buf()
497 ps_dbg(sta->sdata, "STA %pM aid %d: PS buffer for AC %d\n", in ieee80211_tx_h_unicast_ps_buf()
498 sta->sta.addr, sta->sta.aid, ac); in ieee80211_tx_h_unicast_ps_buf()
503 spin_lock(&sta->ps_lock); in ieee80211_tx_h_unicast_ps_buf()
509 if (!test_sta_flag(sta, WLAN_STA_PS_STA) && in ieee80211_tx_h_unicast_ps_buf()
510 !test_sta_flag(sta, WLAN_STA_PS_DRIVER) && in ieee80211_tx_h_unicast_ps_buf()
511 !test_sta_flag(sta, WLAN_STA_PS_DELIVER)) { in ieee80211_tx_h_unicast_ps_buf()
512 spin_unlock(&sta->ps_lock); in ieee80211_tx_h_unicast_ps_buf()
516 if (skb_queue_len(&sta->ps_tx_buf[ac]) >= STA_MAX_TX_BUFFER) { in ieee80211_tx_h_unicast_ps_buf()
517 struct sk_buff *old = skb_dequeue(&sta->ps_tx_buf[ac]); in ieee80211_tx_h_unicast_ps_buf()
520 sta->sta.addr, ac); in ieee80211_tx_h_unicast_ps_buf()
529 skb_queue_tail(&sta->ps_tx_buf[ac], tx->skb); in ieee80211_tx_h_unicast_ps_buf()
530 spin_unlock(&sta->ps_lock); in ieee80211_tx_h_unicast_ps_buf()
541 sta_info_recalc_tim(sta); in ieee80211_tx_h_unicast_ps_buf()
544 } else if (unlikely(test_sta_flag(sta, WLAN_STA_PS_STA))) { in ieee80211_tx_h_unicast_ps_buf()
547 sta->sta.addr); in ieee80211_tx_h_unicast_ps_buf()
592 if (tx->sta && in ieee80211_tx_h_select_key()
593 (key = rcu_dereference(tx->sta->ptk[tx->sta->ptk_idx]))) in ieee80211_tx_h_select_key()
629 !ieee80211_use_mfp(hdr->frame_control, tx->sta, in ieee80211_tx_h_select_key()
654 } else if (ieee80211_is_data_present(hdr->frame_control) && tx->sta && in ieee80211_tx_h_select_key()
655 test_sta_flag(tx->sta, WLAN_STA_USES_ENCRYPTION)) { in ieee80211_tx_h_select_key()
714 (tx->sta && test_sta_flag(tx->sta, WLAN_STA_SHORT_PREAMBLE)))) in ieee80211_tx_h_rate_ctrl()
723 if (tx->sta) in ieee80211_tx_h_rate_ctrl()
724 assoc = test_sta_flag(tx->sta, WLAN_STA_ASSOC); in ieee80211_tx_h_rate_ctrl()
731 !rate_usable_index_exists(sband, &tx->sta->sta), in ieee80211_tx_h_rate_ctrl()
744 rate_control_get_rate(tx->sdata, tx->sta, &txrc); in ieee80211_tx_h_rate_ctrl()
746 if (tx->sta && !info->control.skip_table) in ieee80211_tx_h_rate_ctrl()
747 ratetbl = rcu_dereference(tx->sta->sta.rates); in ieee80211_tx_h_rate_ctrl()
770 if (tx->sta && ieee80211_is_tx_data(tx->skb)) in ieee80211_tx_h_rate_ctrl()
771 tx->sta->tx_stats.last_rate = txrc.reported_rate; in ieee80211_tx_h_rate_ctrl()
772 } else if (tx->sta) in ieee80211_tx_h_rate_ctrl()
773 tx->sta->tx_stats.last_rate = txrc.reported_rate; in ieee80211_tx_h_rate_ctrl()
788 static __le16 ieee80211_tx_next_seq(struct sta_info *sta, int tid) in ieee80211_tx_next_seq() argument
790 u16 *seq = &sta->tid_seq[tid]; in ieee80211_tx_next_seq()
839 if (tx->sta) in ieee80211_tx_h_sequence()
840 tx->sta->tx_stats.msdu[IEEE80211_NUM_TIDS]++; in ieee80211_tx_h_sequence()
849 if (!tx->sta) in ieee80211_tx_h_sequence()
854 tx->sta->tx_stats.msdu[tid]++; in ieee80211_tx_h_sequence()
856 hdr->seq_ctrl = ieee80211_tx_next_seq(tx->sta, tid); in ieee80211_tx_h_sequence()
1002 if (!tx->sta) in ieee80211_tx_h_stats()
1007 tx->sta->tx_stats.bytes[ac] += skb->len; in ieee80211_tx_h_stats()
1010 tx->sta->tx_stats.packets[ac]++; in ieee80211_tx_h_stats()
1096 } else if (!tx->sta->sta.txq[tid]) { in ieee80211_tx_prep_agg()
1097 spin_lock(&tx->sta->lock); in ieee80211_tx_prep_agg()
1116 tid_tx = rcu_dereference_protected_tid_tx(tx->sta, tid); in ieee80211_tx_prep_agg()
1126 clear_sta_flag(tx->sta, WLAN_STA_SP); in ieee80211_tx_prep_agg()
1127 ps_dbg(tx->sta->sdata, in ieee80211_tx_prep_agg()
1129 tx->sta->sta.addr, tx->sta->sta.aid); in ieee80211_tx_prep_agg()
1138 spin_unlock(&tx->sta->lock); in ieee80211_tx_prep_agg()
1153 struct sta_info *sta, in ieee80211_aggr_check() argument
1162 if (!sta || !sta->sta.ht_cap.ht_supported || in ieee80211_aggr_check()
1163 !sta->sta.wme || skb_get_queue_mapping(skb) == IEEE80211_AC_VO || in ieee80211_aggr_check()
1168 if (likely(sta->ampdu_mlme.tid_tx[tid])) in ieee80211_aggr_check()
1171 ieee80211_start_tx_ba_session(&sta->sta, tid, 0); in ieee80211_aggr_check()
1182 struct sta_info *sta, struct sk_buff *skb) in ieee80211_tx_prepare() argument
1205 if (likely(sta)) { in ieee80211_tx_prepare()
1206 if (!IS_ERR(sta)) in ieee80211_tx_prepare()
1207 tx->sta = sta; in ieee80211_tx_prepare()
1210 tx->sta = rcu_dereference(sdata->u.vlan.sta); in ieee80211_tx_prepare()
1211 if (!tx->sta && sdata->wdev.use_4addr) in ieee80211_tx_prepare()
1214 tx->sta = sta_info_get_bss(sdata, hdr->addr1); in ieee80211_tx_prepare()
1216 if (!tx->sta && !is_multicast_ether_addr(hdr->addr1)) { in ieee80211_tx_prepare()
1217 tx->sta = sta_info_get(sdata, hdr->addr1); in ieee80211_tx_prepare()
1222 if (tx->sta && ieee80211_is_data_qos(hdr->frame_control) && in ieee80211_tx_prepare()
1229 tid_tx = rcu_dereference(tx->sta->ampdu_mlme.tid_tx[tid]); in ieee80211_tx_prepare()
1231 ieee80211_aggr_check(sdata, tx->sta, skb); in ieee80211_tx_prepare()
1232 tid_tx = rcu_dereference(tx->sta->ampdu_mlme.tid_tx[tid]); in ieee80211_tx_prepare()
1259 if (!tx->sta) in ieee80211_tx_prepare()
1261 else if (test_and_clear_sta_flag(tx->sta, WLAN_STA_CLEAR_PS_FILT)) { in ieee80211_tx_prepare()
1263 ieee80211_check_fast_xmit(tx->sta); in ieee80211_tx_prepare()
1273 struct sta_info *sta, in ieee80211_get_txq() argument
1289 sta && sta->uploaded) { in ieee80211_get_txq()
1294 txq = sta->sta.txq[IEEE80211_NUM_TIDS]; in ieee80211_get_txq()
1296 } else if (sta) { in ieee80211_get_txq()
1299 if (!sta->uploaded) in ieee80211_get_txq()
1302 txq = sta->sta.txq[tid]; in ieee80211_get_txq()
1379 if (txqi->txq.sta) { in fq_tin_dequeue_func()
1380 struct sta_info *sta = container_of(txqi->txq.sta, in fq_tin_dequeue_func() local
1381 struct sta_info, sta); in fq_tin_dequeue_func()
1382 cparams = &sta->cparams; in fq_tin_dequeue_func()
1477 struct sta_info *sta, in ieee80211_txq_init() argument
1488 if (!sta) { in ieee80211_txq_init()
1512 txqi->txq.sta = &sta->sta; in ieee80211_txq_init()
1514 sta->sta.txq[tid] = &txqi->txq; in ieee80211_txq_init()
1620 struct sta_info *sta, in ieee80211_queue_skb() argument
1635 txqi = ieee80211_get_txq(local, vif, sta, skb); in ieee80211_queue_skb()
1649 struct sta_info *sta, in ieee80211_tx_frags() argument
1711 control.sta = sta ? &sta->sta : NULL; in ieee80211_tx_frags()
1724 struct sk_buff_head *skbs, struct sta_info *sta, in __ieee80211_tx() argument
1739 if (sta && !sta->uploaded) in __ieee80211_tx()
1740 sta = NULL; in __ieee80211_tx()
1768 result = ieee80211_tx_frags(local, vif, sta, skbs, txpending); in __ieee80211_tx()
1871 int band, struct ieee80211_sta **sta) in ieee80211_tx_prepare_skb() argument
1888 if (sta) { in ieee80211_tx_prepare_skb()
1889 if (tx.sta) in ieee80211_tx_prepare_skb()
1890 *sta = &tx.sta->sta; in ieee80211_tx_prepare_skb()
1892 *sta = NULL; in ieee80211_tx_prepare_skb()
1911 struct sta_info *sta, struct sk_buff *skb, in ieee80211_tx() argument
1926 res_prepare = ieee80211_tx_prepare(sdata, &tx, sta, skb); in ieee80211_tx()
1944 if (ieee80211_queue_skb(local, sdata, tx.sta, tx.skb)) in ieee80211_tx()
1948 result = __ieee80211_tx(local, &tx.skbs, tx.sta, txpending); in ieee80211_tx()
1999 struct sta_info *sta, struct sk_buff *skb) in ieee80211_xmit() argument
2040 ieee80211_tx(sdata, sta, skb, false); in ieee80211_xmit()
2432 struct sta_info *sta; in ieee80211_lookup_ra_sta() local
2436 sta = rcu_dereference(sdata->u.vlan.sta); in ieee80211_lookup_ra_sta()
2437 if (sta) { in ieee80211_lookup_ra_sta()
2438 *sta_out = sta; in ieee80211_lookup_ra_sta()
2451 sta = sta_info_get_bss(sdata, skb->data); in ieee80211_lookup_ra_sta()
2461 sta = sta_info_get(sdata, skb->data); in ieee80211_lookup_ra_sta()
2462 if (sta && test_sta_flag(sta, WLAN_STA_TDLS_PEER)) { in ieee80211_lookup_ra_sta()
2463 if (test_sta_flag(sta, in ieee80211_lookup_ra_sta()
2465 *sta_out = sta; in ieee80211_lookup_ra_sta()
2482 sta = sta_info_get(sdata, sdata->u.mgd.bssid); in ieee80211_lookup_ra_sta()
2483 if (!sta) in ieee80211_lookup_ra_sta()
2490 *sta_out = sta ?: ERR_PTR(-ENOENT); in ieee80211_lookup_ra_sta()
2554 struct sta_info *sta, u32 ctrl_flags, in ieee80211_build_hdr() argument
2576 if (IS_ERR(sta)) in ieee80211_build_hdr()
2577 sta = NULL; in ieee80211_build_hdr()
2594 memcpy(hdr.addr1, sta->sta.addr, ETH_ALEN); in ieee80211_build_hdr()
2599 authorized = test_sta_flag(sta, WLAN_STA_AUTHORIZED); in ieee80211_build_hdr()
2600 wme_sta = sta->sta.wme; in ieee80211_build_hdr()
2711 tdls_peer = test_sta_flag(sta, WLAN_STA_TDLS_PEER); in ieee80211_build_hdr()
2778 if (sta) { in ieee80211_build_hdr()
2779 authorized = test_sta_flag(sta, WLAN_STA_AUTHORIZED); in ieee80211_build_hdr()
2780 wme_sta = sta->sta.wme; in ieee80211_build_hdr()
2938 void ieee80211_check_fast_xmit(struct sta_info *sta) in ieee80211_check_fast_xmit() argument
2941 struct ieee80211_local *local = sta->local; in ieee80211_check_fast_xmit()
2942 struct ieee80211_sub_if_data *sdata = sta->sdata; in ieee80211_check_fast_xmit()
2962 spin_lock_bh(&sta->lock); in ieee80211_check_fast_xmit()
2968 if (!test_sta_flag(sta, WLAN_STA_AUTHORIZED)) in ieee80211_check_fast_xmit()
2971 if (test_sta_flag(sta, WLAN_STA_PS_STA) || in ieee80211_check_fast_xmit()
2972 test_sta_flag(sta, WLAN_STA_PS_DRIVER) || in ieee80211_check_fast_xmit()
2973 test_sta_flag(sta, WLAN_STA_PS_DELIVER) || in ieee80211_check_fast_xmit()
2974 test_sta_flag(sta, WLAN_STA_CLEAR_PS_FILT)) in ieee80211_check_fast_xmit()
3005 if (test_sta_flag(sta, WLAN_STA_TDLS_PEER)) { in ieee80211_check_fast_xmit()
3038 memcpy(hdr->addr1, sta->sta.addr, ETH_ALEN); in ieee80211_check_fast_xmit()
3059 if (sta->sta.wme) { in ieee80211_check_fast_xmit()
3069 build.key = rcu_access_pointer(sta->ptk[sta->ptk_idx]); in ieee80211_check_fast_xmit()
3158 old = rcu_dereference_protected(sta->fast_tx, in ieee80211_check_fast_xmit()
3159 lockdep_is_held(&sta->lock)); in ieee80211_check_fast_xmit()
3160 rcu_assign_pointer(sta->fast_tx, fast_tx); in ieee80211_check_fast_xmit()
3163 spin_unlock_bh(&sta->lock); in ieee80211_check_fast_xmit()
3168 struct sta_info *sta; in ieee80211_check_fast_xmit_all() local
3171 list_for_each_entry_rcu(sta, &local->sta_list, list) in ieee80211_check_fast_xmit_all()
3172 ieee80211_check_fast_xmit(sta); in ieee80211_check_fast_xmit_all()
3179 struct sta_info *sta; in ieee80211_check_fast_xmit_iface() local
3183 list_for_each_entry_rcu(sta, &local->sta_list, list) { in ieee80211_check_fast_xmit_iface()
3184 if (sdata != sta->sdata && in ieee80211_check_fast_xmit_iface()
3185 (!sta->sdata->bss || sta->sdata->bss != sdata->bss)) in ieee80211_check_fast_xmit_iface()
3187 ieee80211_check_fast_xmit(sta); in ieee80211_check_fast_xmit_iface()
3193 void ieee80211_clear_fast_xmit(struct sta_info *sta) in ieee80211_clear_fast_xmit() argument
3197 spin_lock_bh(&sta->lock); in ieee80211_clear_fast_xmit()
3198 fast_tx = rcu_dereference_protected(sta->fast_tx, in ieee80211_clear_fast_xmit()
3199 lockdep_is_held(&sta->lock)); in ieee80211_clear_fast_xmit()
3200 RCU_INIT_POINTER(sta->fast_tx, NULL); in ieee80211_clear_fast_xmit()
3201 spin_unlock_bh(&sta->lock); in ieee80211_clear_fast_xmit()
3291 struct sta_info *sta, in ieee80211_amsdu_aggregate() argument
3300 struct ieee80211_txq *txq = sta->sta.txq[tid]; in ieee80211_amsdu_aggregate()
3304 u8 max_subframes = sta->sta.max_amsdu_subframes; in ieee80211_amsdu_aggregate()
3306 int max_amsdu_len = sta->sta.max_amsdu_len; in ieee80211_amsdu_aggregate()
3332 if (sta->sta.max_rc_amsdu_len) in ieee80211_amsdu_aggregate()
3334 sta->sta.max_rc_amsdu_len); in ieee80211_amsdu_aggregate()
3336 if (sta->sta.max_tid_amsdu_len[tid]) in ieee80211_amsdu_aggregate()
3338 sta->sta.max_tid_amsdu_len[tid]); in ieee80211_amsdu_aggregate()
3437 struct sta_info *sta, u8 pn_offs, in ieee80211_xmit_fast_finish() argument
3457 hdr->seq_ctrl = ieee80211_tx_next_seq(sta, tid); in ieee80211_xmit_fast_finish()
3465 sta->tx_stats.msdu[tid] += in ieee80211_xmit_fast_finish()
3468 sta->tx_stats.msdu[tid]++; in ieee80211_xmit_fast_finish()
3475 sta->tx_stats.bytes[skb_get_queue_mapping(skb)] += skb->len; in ieee80211_xmit_fast_finish()
3476 sta->tx_stats.packets[skb_get_queue_mapping(skb)]++; in ieee80211_xmit_fast_finish()
3503 struct sta_info *sta, in ieee80211_xmit_fast() argument
3533 tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[tid]); in ieee80211_xmit_fast()
3555 ieee80211_amsdu_aggregate(sdata, sta, fast_tx, skb)) in ieee80211_xmit_fast()
3600 tx.sta = sta; in ieee80211_xmit_fast()
3603 if (ieee80211_queue_skb(local, sdata, sta, skb)) in ieee80211_xmit_fast()
3607 r = ieee80211_xmit_fast_finish(sdata, sta, fast_tx->pn_offs, in ieee80211_xmit_fast()
3620 ieee80211_tx_frags(local, &sdata->vif, sta, &tx.skbs, false); in ieee80211_xmit_fast()
3681 if (txq->sta) { in ieee80211_tx_dequeue()
3682 tx.sta = container_of(txq->sta, struct sta_info, sta); in ieee80211_tx_dequeue()
3692 !test_sta_flag(tx.sta, WLAN_STA_AUTHORIZED) && in ieee80211_tx_dequeue()
3730 struct sta_info *sta = container_of(txq->sta, struct sta_info, in ieee80211_tx_dequeue() local
3731 sta); in ieee80211_tx_dequeue()
3738 r = ieee80211_xmit_fast_finish(sta->sdata, sta, pn_offs, in ieee80211_tx_dequeue()
3800 airtime = ieee80211_calc_expected_tx_airtime(hw, vif, txq->sta, in ieee80211_tx_dequeue()
3804 ieee80211_sta_update_pending_airtime(local, tx.sta, in ieee80211_tx_dequeue()
4084 if (!txq->sta) in ieee80211_txq_airtime_check()
4169 struct sta_info *sta; in __ieee80211_subif_start_xmit() local
4180 if (ieee80211_lookup_ra_sta(sdata, skb, &sta)) in __ieee80211_subif_start_xmit()
4183 if (IS_ERR(sta)) in __ieee80211_subif_start_xmit()
4184 sta = NULL; in __ieee80211_subif_start_xmit()
4187 u16 queue = __ieee80211_select_queue(sdata, sta, skb); in __ieee80211_subif_start_xmit()
4192 ieee80211_aggr_check(sdata, sta, skb); in __ieee80211_subif_start_xmit()
4196 if (sta) { in __ieee80211_subif_start_xmit()
4199 fast_tx = rcu_dereference(sta->fast_tx); in __ieee80211_subif_start_xmit()
4202 ieee80211_xmit_fast(sdata, sta, fast_tx, skb)) in __ieee80211_subif_start_xmit()
4240 sta, ctrl_flags, cookie); in __ieee80211_subif_start_xmit()
4248 ieee80211_xmit(sdata, sta, skb); in __ieee80211_subif_start_xmit()
4260 static int ieee80211_change_da(struct sk_buff *skb, struct sta_info *sta) in ieee80211_change_da() argument
4270 ether_addr_copy(eth->h_dest, sta->sta.addr); in ieee80211_change_da()
4288 if (sdata->u.vlan.sta) in ieee80211_multicast_to_unicast()
4325 struct sta_info *sta, *first = NULL; in ieee80211_convert_to_unicast() local
4330 list_for_each_entry_rcu(sta, &local->sta_list, list) { in ieee80211_convert_to_unicast()
4331 if (sdata != sta->sdata) in ieee80211_convert_to_unicast()
4334 if (unlikely(ether_addr_equal(eth->h_source, sta->sta.addr))) in ieee80211_convert_to_unicast()
4338 first = sta; in ieee80211_convert_to_unicast()
4344 if (unlikely(ieee80211_change_da(cloned_skb, sta))) { in ieee80211_convert_to_unicast()
4394 struct sk_buff *skb, struct sta_info *sta, in ieee80211_tx_8023() argument
4404 if (sta) in ieee80211_tx_8023()
4409 if (ieee80211_queue_skb(local, sdata, sta, skb)) in ieee80211_tx_8023()
4428 if (sta && sta->uploaded) in ieee80211_tx_8023()
4429 pubsta = &sta->sta; in ieee80211_tx_8023()
4431 control.sta = pubsta; in ieee80211_tx_8023()
4439 struct net_device *dev, struct sta_info *sta, in ieee80211_8023_xmit() argument
4448 u16 queue = __ieee80211_select_queue(sdata, sta, skb); in ieee80211_8023_xmit()
4459 ieee80211_aggr_check(sdata, sta, skb); in ieee80211_8023_xmit()
4462 tid_tx = rcu_dereference(sta->ampdu_mlme.tid_tx[tid]); in ieee80211_8023_xmit()
4484 sta->tx_stats.bytes[skb_get_queue_mapping(skb)] += skb->len; in ieee80211_8023_xmit()
4485 sta->tx_stats.packets[skb_get_queue_mapping(skb)]++; in ieee80211_8023_xmit()
4497 ieee80211_tx_8023(sdata, skb, sta, false); in ieee80211_8023_xmit()
4511 struct sta_info *sta; in ieee80211_subif_start_xmit_8023() local
4520 if (ieee80211_lookup_ra_sta(sdata, skb, &sta)) { in ieee80211_subif_start_xmit_8023()
4525 if (unlikely(IS_ERR_OR_NULL(sta) || !sta->uploaded || in ieee80211_subif_start_xmit_8023()
4526 !test_sta_flag(sta, WLAN_STA_AUTHORIZED) || in ieee80211_subif_start_xmit_8023()
4530 key = rcu_dereference(sta->ptk[sta->ptk_idx]); in ieee80211_subif_start_xmit_8023()
4538 ieee80211_8023_xmit(sdata, dev, sta, key, skb); in ieee80211_subif_start_xmit_8023()
4558 struct sta_info *sta; in ieee80211_build_data_template() local
4562 if (ieee80211_lookup_ra_sta(sdata, skb, &sta)) { in ieee80211_build_data_template()
4568 skb = ieee80211_build_hdr(sdata, skb, info_flags, sta, 0, NULL); in ieee80211_build_data_template()
4573 tx.sta = sta_info_get(sdata, hdr->addr1); in ieee80211_build_data_template()
4612 struct sta_info *sta; in ieee80211_tx_pending_skb() local
4628 if (ieee80211_lookup_ra_sta(sdata, skb, &sta)) { in ieee80211_tx_pending_skb()
4633 if (IS_ERR(sta) || (sta && !sta->uploaded)) in ieee80211_tx_pending_skb()
4634 sta = NULL; in ieee80211_tx_pending_skb()
4636 result = ieee80211_tx_8023(sdata, skb, sta, true); in ieee80211_tx_pending_skb()
4644 sta = sta_info_get(sdata, hdr->addr1); in ieee80211_tx_pending_skb()
4646 result = __ieee80211_tx(local, &skbs, sta, true); in ieee80211_tx_pending_skb()
5408 struct sta_info *sta; in ieee80211_nullfunc_get() local
5411 sta = sta_info_get(sdata, ifmgd->bssid); in ieee80211_nullfunc_get()
5412 qos = sta && sta->sta.wme; in ieee80211_nullfunc_get()
5593 struct sta_info *sta = container_of(pubsta, struct sta_info, sta); in ieee80211_reserve_tid() local
5594 struct ieee80211_sub_if_data *sdata = sta->sdata; in ieee80211_reserve_tid()
5615 if (sta->reserved_tid == tid) { in ieee80211_reserve_tid()
5620 if (sta->reserved_tid != IEEE80211_TID_UNRESERVED) { in ieee80211_reserve_tid()
5633 set_sta_flag(sta, WLAN_STA_BLOCK_BA); in ieee80211_reserve_tid()
5634 __ieee80211_stop_tx_ba_session(sta, tid, in ieee80211_reserve_tid()
5641 sta->reserved_tid = tid; in ieee80211_reserve_tid()
5647 clear_sta_flag(sta, WLAN_STA_BLOCK_BA); in ieee80211_reserve_tid()
5657 struct sta_info *sta = container_of(pubsta, struct sta_info, sta); in ieee80211_unreserve_tid() local
5658 struct ieee80211_sub_if_data *sdata = sta->sdata; in ieee80211_unreserve_tid()
5673 if (tid != sta->reserved_tid) { in ieee80211_unreserve_tid()
5678 sta->reserved_tid = IEEE80211_TID_UNRESERVED; in ieee80211_unreserve_tid()
5712 struct sta_info *sta; in ieee80211_tx_control_port() local
5762 if (ieee80211_lookup_ra_sta(sdata, skb, &sta) == 0 && !IS_ERR(sta)) { in ieee80211_tx_control_port()
5763 u16 queue = __ieee80211_select_queue(sdata, sta, skb); in ieee80211_tx_control_port()