diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-06-01 19:30:32 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-06-01 19:30:32 +0000 |
commit | d7580992a0b501b1626023fe98eb0b3c746dd5df (patch) | |
tree | 24ff84f4c91b5281cd92a7000f82b9b27293951e | |
parent | c18d6e16ea2334b2d379f7a1e1778427b17666e6 (diff) |
ath9k: one more queue stop/start fix
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21651 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r-- | package/mac80211/patches/530-ath9k_queue_fill.patch | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/package/mac80211/patches/530-ath9k_queue_fill.patch b/package/mac80211/patches/530-ath9k_queue_fill.patch index 172fba400..d9bedd668 100644 --- a/package/mac80211/patches/530-ath9k_queue_fill.patch +++ b/package/mac80211/patches/530-ath9k_queue_fill.patch @@ -118,6 +118,16 @@ dma_unmap_single(sc->dev, bf->bf_dmacontext, skb->len, DMA_TO_DEVICE); ath_tx_complete(sc, skb, bf->aphy, tx_flags); ath_debug_stat_tx(sc, txq, bf, ts); +@@ -2060,8 +2048,7 @@ static void ath_wake_mac80211_queue(stru + int qnum; + + spin_lock_bh(&txq->axq_lock); +- if (txq->stopped && +- sc->tx.txq[txq->axq_qnum].axq_depth <= (ATH_TXBUF - 20)) { ++ if (txq->stopped && txq->pending_frames < ATH_MAX_QDEPTH) { + qnum = ath_get_mac80211_qnum(txq->axq_qnum, sc); + if (qnum != -1) { + ath_mac80211_start_queue(sc, qnum); --- a/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c @@ -1026,6 +1026,7 @@ static int ath9k_tx(struct ieee80211_hw |