diff options
-rw-r--r-- | net/mac80211/main.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/mac80211/main.c b/net/mac80211/main.c index 398ca66bdfcb..638b75f36e23 100644 --- a/net/mac80211/main.c +++ b/net/mac80211/main.c | |||
@@ -598,7 +598,7 @@ int ieee80211_start_tx_ba_session(struct ieee80211_hw *hw, u8 *ra, u16 tid) | |||
598 | struct ieee80211_local *local = hw_to_local(hw); | 598 | struct ieee80211_local *local = hw_to_local(hw); |
599 | struct sta_info *sta; | 599 | struct sta_info *sta; |
600 | struct ieee80211_sub_if_data *sdata; | 600 | struct ieee80211_sub_if_data *sdata; |
601 | u16 start_seq_num = 0; | 601 | u16 start_seq_num; |
602 | u8 *state; | 602 | u8 *state; |
603 | int ret; | 603 | int ret; |
604 | DECLARE_MAC_BUF(mac); | 604 | DECLARE_MAC_BUF(mac); |
@@ -678,6 +678,9 @@ int ieee80211_start_tx_ba_session(struct ieee80211_hw *hw, u8 *ra, u16 tid) | |||
678 | * call back right away, it must see that the flow has begun */ | 678 | * call back right away, it must see that the flow has begun */ |
679 | *state |= HT_ADDBA_REQUESTED_MSK; | 679 | *state |= HT_ADDBA_REQUESTED_MSK; |
680 | 680 | ||
681 | /* This is slightly racy because the queue isn't stopped */ | ||
682 | start_seq_num = sta->tid_seq[tid]; | ||
683 | |||
681 | if (local->ops->ampdu_action) | 684 | if (local->ops->ampdu_action) |
682 | ret = local->ops->ampdu_action(hw, IEEE80211_AMPDU_TX_START, | 685 | ret = local->ops->ampdu_action(hw, IEEE80211_AMPDU_TX_START, |
683 | ra, tid, &start_seq_num); | 686 | ra, tid, &start_seq_num); |