Re: [net-next RFC v3 5/7] net: ravb: Enable SW IRQ Coalescing for GbEth

From: Sergey Shtylyov
Date: Fri Apr 19 2024 - 16:26:27 EST


On 4/15/24 12:48 PM, Paul Barker wrote:

> Software IRQ Coalescing is required to improve network stack performance
> in the RZ/G2L SoC family and the RZ/G3S SoC, i.e. the SoCs which use the
> GbEth IP.
>
> This patch gives the following improvements during testing with iperf3:
>
> * RZ/G2L:
> * TCP RX: same bandwidth with -6% CPU load (76% -> 71%)
> * UDP RX: same bandwidth with -10% CPU load (99% -> 89%)
>
> * RZ/G2UL:
> * UDP RX: +4200% bandwidth (1.23Mbps -> 53Mbps)
>
> * RZ/G3S:
> * UDP RX: +425% bandwidth (1.23Mbps -> 6.46Mbps)
>
> The improvement of UDP RX bandwidth for the single core SoCs (RZ/G2UL &
> RZ/G3S) is particularly critical.
>
> Signed-off-by: Paul Barker <paul.barker.ct@xxxxxxxxxxxxxx>

Reviewed-by: Sergey Shtylyov <s.shtylyov@xxxxxx>

[...]

> diff --git a/drivers/net/ethernet/renesas/ravb.h b/drivers/net/ethernet/renesas/ravb.h
> index 71de2a7aa27c..9c6392ade2f1 100644
> --- a/drivers/net/ethernet/renesas/ravb.h
> +++ b/drivers/net/ethernet/renesas/ravb.h
> @@ -1054,6 +1054,7 @@ struct ravb_hw_info {
> u32 rx_max_desc_use;
> u32 rx_desc_size;
> unsigned aligned_tx: 1;
> + unsigned needs_irq_coalesce:1; /* Needs software IRQ coalescing */

Perhaps something shorter, like coalesce_irqs?

[...]

MBR, Sergey