From: Felix Fietkau Date: Tue, 1 Jun 2010 19:30:32 +0000 (+0000) Subject: ath9k: one more queue stop/start fix X-Git-Tag: reboot~19747 X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=013be5ebe6af5971eeb7b698936b8682c285e96c;p=openwrt%2Fopenwrt.git ath9k: one more queue stop/start fix SVN-Revision: 21651 --- diff --git a/package/mac80211/patches/530-ath9k_queue_fill.patch b/package/mac80211/patches/530-ath9k_queue_fill.patch index 172fba4009..d9bedd668f 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