Re: [PATCH 2/2] net: thunderbolt: enlarge RX/TX ring and set NAPI weight for sustained load
From: Mika Westerberg
Date: Tue Apr 28 2026 - 13:28:13 EST
On Tue, Apr 28, 2026 at 04:39:25PM +0200, Andrew Lunn wrote:
> > > Is there interrupt coalesce going on, and the coalesce time set too
> > > high, so that by the time the interrupt fires the ring is full? Can
> > > you play with ethtool -C?
> >
> > Thanks!
> >
> > I'll leave these to Benjamin and Claude AI to answer.
> >
> > One thing that could affect is the interrupt throttling that the hardware
> > is doing. We have quite big value there by default. Lowering that may have
> > affect as well. I just posted a patch series where one of the patches makes
> > this configurable in the tbnet driver so you could apply that and play with
> > the throttling value:
> >
> > https://lore.kernel.org/linux-usb/20260428072209.3084930-6-mika.westerberg@xxxxxxxxxxxxxxx/
>
> So i guess this is interrupt coalesce by another name.
>
> In netdev, the module parameter would get NACKed.
Okay.
> [Looks more closely at the code].
>
> So, you are adding the module parameter in
> drivers/net/thunderbolt/main.c. That clearly is netdev code. So sorry,
> please don't do that.
>
> But ethtool provides an API for configuring these things:
>
> ethtool -C|--coalesce devname [adaptive-rx on|off] [adaptive-tx on|off]
> [rx-usecs N] [rx-frames N] [rx-usecs-irq N] [rx-frames-irq N]
> [tx-usecs N] [tx-frames N] [tx-usecs-irq N] [tx-frames-irq N]
> [stats-block-usecs N] [pkt-rate-low N] [rx-usecs-low N]
> [rx-frames-low N] [tx-usecs-low N] [tx-frames-low N]
> [pkt-rate-high N] [rx-usecs-high N] [rx-frames-high N]
> [tx-usecs-high N] [tx-frames-high N] [sample-interval N]
>
> So i hope you can map these parameters to your tb_ring_throttling()
> call.
Sure, that's not mandatory (as I explain in the other thread). I can just
drop that part.