Thread (3 messages) 3 messages, 2 authors, 2022-11-30

Re: [PATCH net-next] r8169: enable GRO software interrupt coalescing per default

From: Jakub Kicinski <kuba@kernel.org>
Date: 2022-11-29 03:08:04

On Sat, 26 Nov 2022 15:07:07 +0100 Heiner Kallweit wrote:
There are reports about r8169 not reaching full line speed on certain
systems (e.g. SBC's) with a 2.5Gbps link.
There was a time when hardware interrupt coalescing was enabled per
default, but this was changed due to ASPM-related issues on few systems.

Meanwhile we have sysfs attributes for controlling kind of
"software interrupt coalescing" on the GRO level. However most distros
and users don't know about it. So lets set a conservative default for
both involved parameters. Users can still override the defaults via
sysfs. Don't enable these settings on the fast ethernet chip versions,
they are slow enough.

Even with these conservative setting interrupt load on my 1Gbps test
system reduced significantly.
Sure, why not. Could you please wrap the init into a helper?
Should help us ensure the params are not wildly different between
drivers and make any later refactoring easier.

Maybe something like:

/**
 * netdev_sw_irq_coalesce_default_on() - enable SW IRQ coalescing by default
 * @dev: netdev to enable the IRQ coalescing on
 * bla bla bla
 */
int netdev_sw_irq_coalesce_default_on(struct net_device *dev)
{
	WARN_ON(dev->reg_state != NETREG_UNREGISTERED);

	dev->gro_flush_timeout = 20000;
	dev->napi_defer_hard_irqs = 1;
}
EXPORT...
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help