]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
net: airoha: Do not wake all netdev TX queues in airoha_qdma_wake_netdev_txqs()
authorLorenzo Bianconi <lorenzo@kernel.org>
Tue, 21 Apr 2026 08:53:33 +0000 (10:53 +0200)
committerJakub Kicinski <kuba@kernel.org>
Tue, 28 Apr 2026 00:37:57 +0000 (17:37 -0700)
commite070aac63b42bf81f4dc565f9f841ff47e6c992f
treed6060e6c2f22574d6c225d436662019fe7a6aac0
parent3854de7b38be742cf7558476956d12414cb274f2
net: airoha: Do not wake all netdev TX queues in airoha_qdma_wake_netdev_txqs()

Do not wake every netdev TX queue across all ports sharing the QDMA
running netif_tx_wake_all_queues routine in airoha_qdma_wake_netdev_txqs()
but only the ones that are mapped the specific QDMA stopped hw TX queue.
This patch can potentially avoid waking already stopped netdev TX queues
that are mapped to a different QDMA hw TX queue.
Introduce airoha_qdma_get_txq utility routine.

Fixes: b94769eb2f30 ("net: airoha: Fix possible TX queue stall in airoha_qdma_tx_napi_poll()")
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://patch.msgid.link/20260421-airoha-wake_netdev_txqs-optmization-v1-1-e0be95115d53@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/airoha/airoha_eth.c
drivers/net/ethernet/airoha/airoha_eth.h