Re: [net,PATCH v3 1/2] net: ks8851: Reinstate disabling of BHs around IRQ handler
From: Marek Vasut
Date: Sat Apr 18 2026 - 12:47:16 EST
On 4/16/26 12:48 PM, Sebastian Andrzej Siewior wrote:
On 2026-04-16 11:26:00 [+0200], Marek Vasut wrote:This driver .start_xmit is very simple, if there is space in the 6 kiB TX FIFO, then the packet is written into it, otherwise the .start_xmit returns NETDEV_TX_BUSY . There does not seem to be any netif_{start,stop,wake}_queue() in the .start_xmit path.
memory allocation. Therefore I am saying this backtrace is from an older
kernel.
I actually did update the backtrace in V3 with the one from next 20260413
that contained b44596ffe1b4 ("ARM: Allow to enable RT") from
stable-rt/v6.12-rt-rebase branch [1] .
I think I misunderstood the usage of "softirq is raised" vs. "softirq is
invoked" above . Is it possible that there was an already raised softirq
before the threaded IRQ handler was invoked, and __netdev_alloc_skb() is
what invoked that softirq ?
It is not impossible. Something needs to netif_wake_queue() and
ks8851_irq() must only report IRQ_RXI (not IRQ_TXI). Then it can happen.
But usually the driver "stops" the queue if it can't process any new
packets and resumes it once a packet has been sent so it has room again.