Remove empty flag in mt76_txq_schedule_list and mt76_txq_send_burst
since we just need retry_q length to notify mac80211 to reschedule the
current tx queue

Signed-off-by: Lorenzo Bianconi <[email protected]>
---
 drivers/net/wireless/mediatek/mt76/tx.c | 23 +++++++----------------
 1 file changed, 7 insertions(+), 16 deletions(-)

diff --git a/drivers/net/wireless/mediatek/mt76/tx.c 
b/drivers/net/wireless/mediatek/mt76/tx.c
index d7982aa83c11..51d69329ed06 100644
--- a/drivers/net/wireless/mediatek/mt76/tx.c
+++ b/drivers/net/wireless/mediatek/mt76/tx.c
@@ -378,7 +378,7 @@ EXPORT_SYMBOL_GPL(mt76_release_buffered_frames);
 
 static int
 mt76_txq_send_burst(struct mt76_dev *dev, struct mt76_sw_queue *sq,
-                   struct mt76_txq *mtxq, bool *empty)
+                   struct mt76_txq *mtxq)
 {
        struct ieee80211_txq *txq = mtxq_to_txq(mtxq);
        enum mt76_txq_id qid = mt76_txq_get_qid(txq);
@@ -392,16 +392,12 @@ mt76_txq_send_burst(struct mt76_dev *dev, struct 
mt76_sw_queue *sq,
        bool probe;
        int idx;
 
-       if (test_bit(MT_WCID_FLAG_PS, &wcid->flags)) {
-               *empty = true;
+       if (test_bit(MT_WCID_FLAG_PS, &wcid->flags))
                return 0;
-       }
 
        skb = mt76_txq_dequeue(dev, mtxq, false);
-       if (!skb) {
-               *empty = true;
+       if (!skb)
                return 0;
-       }
 
        info = IEEE80211_SKB_CB(skb);
        if (!(wcid->tx_info & MT_WCID_TX_INFO_SET))
@@ -432,10 +428,8 @@ mt76_txq_send_burst(struct mt76_dev *dev, struct 
mt76_sw_queue *sq,
                        return -EBUSY;
 
                skb = mt76_txq_dequeue(dev, mtxq, false);
-               if (!skb) {
-                       *empty = true;
+               if (!skb)
                        break;
-               }
 
                info = IEEE80211_SKB_CB(skb);
                cur_ampdu = info->flags & IEEE80211_TX_CTL_AMPDU;
@@ -482,8 +476,6 @@ mt76_txq_schedule_list(struct mt76_dev *dev, enum 
mt76_txq_id qid)
 
        spin_lock_bh(&hwq->lock);
        while (1) {
-               bool empty = false;
-
                if (sq->swq_queued >= 4)
                        break;
 
@@ -515,10 +507,9 @@ mt76_txq_schedule_list(struct mt76_dev *dev, enum 
mt76_txq_id qid)
                        spin_lock_bh(&hwq->lock);
                }
 
-               ret += mt76_txq_send_burst(dev, sq, mtxq, &empty);
-               if (skb_queue_empty(&mtxq->retry_q))
-                       empty = true;
-               ieee80211_return_txq(dev->hw, txq, !empty);
+               ret += mt76_txq_send_burst(dev, sq, mtxq);
+               ieee80211_return_txq(dev->hw, txq,
+                                    !skb_queue_empty(&mtxq->retry_q));
        }
        spin_unlock_bh(&hwq->lock);
 
-- 
2.21.0

Reply via email to