Re: [PATCH net] net: fix spurious TX timeout after dev_activate()

Breno Leitao <[email protected]>
Newsgroups org.kernel.vger.stable,org.kernel.vger.linux-kernel,org.kernel.vger.netdev
Message-ID <[email protected]>
Hello Nicolai,

On Mon, Aug 24, 2026 at 05:13:13PM +0200, Nicolai Buchwitz wrote:
> On 24.8.2026 13:45, Breno Leitao wrote:
> > While debugging another issue today, I found out that my TX queue is
> > stopped for 136.07 years (4294907392 ms).
> 
> nit: 4294907392 ms is ~49.7 days

Lol, let me fix update it.

> >     bnxt_en 0002:01:00.0 eth0: NETDEV WATCHDOG: CPU: 28: transmit queue
> > 23 timed out 4294907392 ms
> > 
> > 4294907392 is not an elapsed time. It is the value of jiffies at that
> > moment: INITIAL_JIFFIES is 4294667296.
> > 
> > dev_activate() runs transition_one_qdisc() over every TX queue, which
> > resets trans_start to 0, and then stamps only queue 0 through
> > netif_trans_update().
> > 
> > Stamp jiffies instead. A queue stopped across dev_activate() now gets a
> > full watchdog_timeo of grace, and is still reported if it is stopped
> > that long.
> > 
> > Fixes: 9b36627acecd ("net: remove dev->trans_start")
> > Cc: [email protected]
> > Signed-off-by: Breno Leitao <[email protected]>
> > ---
> >  net/sched/sch_generic.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c
> > index ef2b4bf515641..4539dc2c6d380 100644
> > --- a/net/sched/sch_generic.c
> > +++ b/net/sched/sch_generic.c
> > @@ -1278,7 +1278,7 @@ static void transition_one_qdisc(struct net_device
> > *dev,
> > 
> >  	rcu_assign_pointer(dev_queue->qdisc, new_qdisc);
> >  	if (need_watchdog_p) {
> > -		WRITE_ONCE(dev_queue->trans_start, 0);
> > +		WRITE_ONCE(dev_queue->trans_start, jiffies);
> >  		*need_watchdog_p = 1;
> >  	}
> >  }
> 
> Follow up or v2: netif_trans_update() in dev_activate() now seems redundant?

Yea, good point, we can get rid of netif_trans_update(), given we have
updated all the trans_start in here.

I will respin this one.

Thanks for the review,
--breno

--
pw-bot: cr
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.