]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
wifi: iwlwifi: do not warn about a flush with an empty TX queue
authorBenjamin Berg <benjamin.berg@intel.com>
Tue, 8 Oct 2024 04:25:25 +0000 (07:25 +0300)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 23 Oct 2024 14:43:58 +0000 (16:43 +0200)
When resuming it can happen that the TX queue is flushed even though it
is entirely empty. This is completely fine and should not be causing an
error level log message.

Return early from reclaim in that case.

Signed-off-by: Benjamin Berg <benjamin.berg@intel.com>
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://patch.msgid.link/20241008072037.7c152d0820be.I3ae39a9a470f47bfe4405f2e5c30327e157eb55f@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
drivers/net/wireless/intel/iwlwifi/pcie/tx.c

index 9fe050f0ddc16002565efce0bf18aecaf771faa9..1ef14340953c3f0db38cf3b1392e6138861c2de4 100644 (file)
@@ -2351,6 +2351,10 @@ void iwl_pcie_reclaim(struct iwl_trans *trans, int txq_id, int ssn,
        txq_write_ptr = txq->write_ptr;
        spin_unlock(&txq->lock);
 
+       /* There is nothing to do if we are flushing an empty queue */
+       if (is_flush && txq_write_ptr == txq_read_ptr)
+               goto out;
+
        read_ptr = iwl_txq_get_cmd_index(txq, txq_read_ptr);
 
        if (!test_bit(txq_id, trans_pcie->txqs.queue_used)) {