diff options
author | Felix Fietkau <nbd@openwrt.org> | 2013-09-17 14:05:15 +0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2013-09-26 22:02:29 +0400 |
commit | 20e6e55aaaa6745fbc815845e2e5e20dc35d62e5 (patch) | |
tree | 0e35eeb105fc1885711c959ffbb85be2b7f4e696 /drivers | |
parent | d29a5fd888918c35eb74496637d448ac37866c6e (diff) | |
download | linux-20e6e55aaaa6745fbc815845e2e5e20dc35d62e5.tar.xz |
ath9k: don't use BAW tracking on PS responses for non-AMPDU packets
When .release_buffered_frames was implemented, only A-MPDU packets were
buffered internally. Now that this has changed, the BUF_AMPDU flag needs
to be checked before calling ath_tx_addto_baw
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/xmit.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/wireless/ath/ath9k/xmit.c b/drivers/net/wireless/ath/ath9k/xmit.c index 58499603f705..9b3736ea2aaf 100644 --- a/drivers/net/wireless/ath/ath9k/xmit.c +++ b/drivers/net/wireless/ath/ath9k/xmit.c @@ -1556,8 +1556,10 @@ void ath9k_release_buffered_frames(struct ieee80211_hw *hw, __skb_unlink(bf->bf_mpdu, tid_q); list_add_tail(&bf->list, &bf_q); ath_set_rates(tid->an->vif, tid->an->sta, bf); - ath_tx_addto_baw(sc, tid, bf); - bf->bf_state.bf_type &= ~BUF_AGGR; + if (bf_isampdu(bf)) { + ath_tx_addto_baw(sc, tid, bf); + bf->bf_state.bf_type &= ~BUF_AGGR; + } if (bf_tail) bf_tail->bf_next = bf; |