[PATCH] net: sunplus: fix tx_poll spin_lock missing irqsave in NAPI context

Andrew Gaylard ag at ffroot.co.za
Mon Aug 24 05:33:36 PDT 2026


Jakub Kicinski <kuba at kernel.org> writes:

> On Thu, 20 Aug 2026 15:01:59 +0200 Andrew Gaylard wrote:
>> spl2sw_tx_poll() runs in NAPI (softirq) context and acquires
>> comm->tx_lock with plain spin_lock(). The hardirq handler
>> spl2sw_ethernet_interrupt() acquires the same lock, so a hardirq on
>> the same CPU while the NAPI poll holds the lock would deadlock with
>> IRQs disabled. Use spin_lock_irqsave/spin_unlock_irqrestore.
>
> Please explain how the issue was found and how the fix was tested.
> I mean - this is an ancient driver, if you don't have a way to test the
> fix you should not be sending the patch.

I'm testing on a Tibbo LTTP3G2 board:
https://tibbo.com/store/tps/ltpp3g2.html

This work is part of getting it to boot, getting it stable, adding a
couple of missing drivers, and sending the changes upstream.

I found the issue using lockdep. At least, I though I did, but I've not
been able to reproduce it, so I must have been mistaken.

Apologies.  Please drop this patch.

-- 
Andrew



More information about the linux-arm-kernel mailing list