Thread (6 messages) 6 messages, 5 authors, 13d ago

Re: [PATCH net] net: bcmasp: fix lost TX wakeup race with lockless queue API

flat view

From: Florian Fainelli <florian.fainelli@broadcom.com>
Date: 2026-09-28 20:39:10

On 9/28/26 13:18, justin.chen@broadcom.com wrote:
From: Justin Chen <justin.chen@broadcom.com>

netif_stop_queue() in bcmasp_xmit() raced with netif_wake_queue() in
bcmasp_tx_poll(): a reclaim landing between the ring-full check and
the stop call left the queue stopped despite free descriptors,
hanging TX until timeout.

Switch to netif_txq_maybe_stop()/netif_txq_completed_wake() (the
lockless TX queue API, which also brings in BQL), replace
tx_spb_ring_full() with a live bcmasp_tx_avail() count.

Fixes: 490cb412007d ("net: bcmasp: Add support for ASP2.0 Ethernet controller")
Signed-off-by: Justin Chen <justin.chen@broadcom.com>
Assisted-by: Claude:claude-sonnet-5
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
-- 
Florian
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help