diff options
author | Felix Fietkau <nbd@openwrt.org> | 2011-11-20 09:29:42 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2011-11-20 09:29:42 +0000 |
commit | 6a9ae47a73ecb71d89282fdc5f01c5333631e148 (patch) | |
tree | 8e568846bdc44e0eba64ce36e8124ac091b4a94a /package/mac80211/patches/300-pending_work.patch | |
parent | 559763bf34091c5df9058d9bed6e97a1097407ae (diff) | |
download | upstream-6a9ae47a73ecb71d89282fdc5f01c5333631e148.tar.gz upstream-6a9ae47a73ecb71d89282fdc5f01c5333631e148.tar.bz2 upstream-6a9ae47a73ecb71d89282fdc5f01c5333631e148.zip |
ath9k: merge a pending aggregation fix
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29273 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211/patches/300-pending_work.patch')
-rw-r--r-- | package/mac80211/patches/300-pending_work.patch | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/package/mac80211/patches/300-pending_work.patch b/package/mac80211/patches/300-pending_work.patch index 3a4a059b45..e86505368d 100644 --- a/package/mac80211/patches/300-pending_work.patch +++ b/package/mac80211/patches/300-pending_work.patch @@ -346,7 +346,36 @@ --- a/drivers/net/wireless/ath/ath9k/xmit.c +++ b/drivers/net/wireless/ath/ath9k/xmit.c -@@ -1955,7 +1955,7 @@ static void ath_tx_complete(struct ath_s +@@ -179,6 +179,11 @@ static void ath_tx_flush_tid(struct ath_ + spin_lock_bh(&txq->axq_lock); + } + ++ if (tid->baw_head == tid->baw_tail) { ++ tid->state &= ~AGGR_ADDBA_COMPLETE; ++ tid->state &= ~AGGR_CLEANUP; ++ } ++ + spin_unlock_bh(&txq->axq_lock); + } + +@@ -556,15 +561,9 @@ static void ath_tx_complete_aggr(struct + spin_unlock_bh(&txq->axq_lock); + } + +- if (tid->state & AGGR_CLEANUP) { ++ if (tid->state & AGGR_CLEANUP) + ath_tx_flush_tid(sc, tid); + +- if (tid->baw_head == tid->baw_tail) { +- tid->state &= ~AGGR_ADDBA_COMPLETE; +- tid->state &= ~AGGR_CLEANUP; +- } +- } +- + rcu_read_unlock(); + + if (needreset) { +@@ -1955,7 +1954,7 @@ static void ath_tx_complete(struct ath_s skb_pull(skb, padsize); } |