hc
2024-01-04 1543e317f1da31b75942316931e8f491a8920811
kernel/net/mac80211/agg-tx.c
....@@ -491,7 +491,7 @@
491491 {
492492 struct tid_ampdu_tx *tid_tx;
493493 struct ieee80211_local *local = sta->local;
494
- struct ieee80211_sub_if_data *sdata = sta->sdata;
494
+ struct ieee80211_sub_if_data *sdata;
495495 struct ieee80211_ampdu_params params = {
496496 .sta = &sta->sta,
497497 .action = IEEE80211_AMPDU_TX_START,
....@@ -521,6 +521,7 @@
521521 */
522522 synchronize_net();
523523
524
+ sdata = sta->sdata;
524525 params.ssn = sta->tid_seq[tid] >> 4;
525526 ret = drv_ampdu_action(local, sdata, &params);
526527 tid_tx->ssn = params.ssn;
....@@ -534,6 +535,9 @@
534535 */
535536 set_bit(HT_AGG_STATE_DRV_READY, &tid_tx->state);
536537 } else if (ret) {
538
+ if (!sdata)
539
+ return;
540
+
537541 ht_dbg(sdata,
538542 "BA request denied - HW unavailable for %pM tid %d\n",
539543 sta->sta.addr, tid);