ath9k: merge a patch for improving ad-hoc mode performance
[openwrt/openwrt.git] / package / mac80211 / patches / 530-ath9k_limit_qlen.patch
index b66289bda10105c02e43333b6666a7cf78051cd8..6c85b429eaeb5a9914673d5e58d7cbc5fda96038 100644 (file)
@@ -65,7 +65,7 @@
                __skb_unlink(skb, &tid->buf_q);
                list_add_tail(&bf->list, bf_q);
                if (bf_prev)
-@@ -1728,6 +1739,8 @@ static void ath_tx_send_ampdu(struct ath
+@@ -1740,6 +1751,8 @@ static void ath_tx_send_ampdu(struct ath
        /* Add sub-frame to BAW */
        ath_tx_addto_baw(sc, tid, bf->bf_state.seqno);
  
@@ -74,7 +74,7 @@
        /* Queue to h/w without aggregation */
        TX_STAT_INC(txctl->txq->axq_qnum, a_queued_hw);
        bf->bf_lastbf = bf;
-@@ -1878,22 +1891,11 @@ error:
+@@ -1890,22 +1903,11 @@ error:
  
  /* FIXME: tx power */
  static void ath_tx_start_dma(struct ath_softc *sc, struct sk_buff *skb,
@@ -99,7 +99,7 @@
  
        if ((tx_info->flags & IEEE80211_TX_CTL_AMPDU) && tid) {
                /*
-@@ -1925,6 +1927,7 @@ int ath_tx_start(struct ieee80211_hw *hw
+@@ -1937,6 +1939,7 @@ int ath_tx_start(struct ieee80211_hw *hw
        struct ieee80211_vif *vif = info->control.vif;
        struct ath_softc *sc = hw->priv;
        struct ath_txq *txq = txctl->txq;
        int padpos, padsize;
        int frmlen = skb->len + FCS_LEN;
        int q;
-@@ -1967,6 +1970,24 @@ int ath_tx_start(struct ieee80211_hw *hw
+@@ -1979,6 +1982,24 @@ int ath_tx_start(struct ieee80211_hw *hw
  
        setup_frame_info(hw, skb, frmlen);
  
        /*
         * At this point, the vif, hw_key and sta pointers in the tx control
         * info are no longer valid (overwritten by the ath_frame_info data.
-@@ -1981,7 +2002,7 @@ int ath_tx_start(struct ieee80211_hw *hw
+@@ -1993,7 +2014,7 @@ int ath_tx_start(struct ieee80211_hw *hw
                txq->stopped = true;
        }