From: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
To: Ovidiu Panait <ovidiu.panait.rb@renesas.com>
Cc: geert+renesas@glider.be, magnus.damm@gmail.com, robh@kernel.org,
krzk+dt@kernel.org, conor+dt@kernel.org,
prabhakar.mahadev-lad.rj@bp.renesas.com,
biju.das.jz@bp.renesas.com, linux-renesas-soc@vger.kernel.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 3/5] arm64: dts: renesas: r9a09g047: Switch GBETH TX queue scheduling to WRR
Date: Fri, 7 Aug 2026 17:27:12 +0200 [thread overview]
Message-ID: <anX5UAtB_PtITkxq@tom-desktop> (raw)
In-Reply-To: <20260722085353.136986-4-ovidiu.panait.rb@renesas.com>
On Wed, Jul 22, 2026 at 08:53:51AM +0000, Ovidiu Panait wrote:
> The GBETH ethernet nodes don't specify a TX scheduling policy, so stmmac
> falls back to Strict Priority. In this configuration the queue with the
> highest priority gets all the traffic, starving the others under load.
>
> Under sustained UDP TX load with multiple data streams, this starvation
> triggers spurious adapter resets due to TX queue timeouts:
>
> iperf3 -c <ip> -i0 -t60 --bind-dev end0 -u -b0 -P4
> end0: NETDEV WATCHDOG: CPU: 1: transmit queue 1 timed out 5228 ms
> end0: Reset adapter.
>
> Investigation shows that only the highest priority queue is advancing
> while the others stall for more than 5 seconds, causing a netdev watchdog
> reset.
>
> Switch the TX scheduling policy to Weighted-Round-Robin (WRR) so that
> traffic is processed across all queues, eliminating the stalls.
>
Tested on RZ/G3E evk:
Tested-by: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Kind Regards,
Tommaso
> Fixes: 41ffbb1c42d3 ("arm64: dts: renesas: r9a09g047: Add GBETH nodes")
> Signed-off-by: Ovidiu Panait <ovidiu.panait.rb@renesas.com>
> ---
> arch/arm64/boot/dts/renesas/r9a09g047.dtsi | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/renesas/r9a09g047.dtsi b/arch/arm64/boot/dts/renesas/r9a09g047.dtsi
> index 73757e8e2197..060405d4a2dd 100644
> --- a/arch/arm64/boot/dts/renesas/r9a09g047.dtsi
> +++ b/arch/arm64/boot/dts/renesas/r9a09g047.dtsi
> @@ -1913,23 +1913,28 @@ queue3 {
>
> mtl_tx_setup0: tx-queues-config {
> snps,tx-queues-to-use = <4>;
> + snps,tx-sched-wrr;
>
> queue0 {
> + snps,weight = <0x10>;
> snps,dcb-algorithm;
> snps,priority = <0x1>;
> };
>
> queue1 {
> + snps,weight = <0x12>;
> snps,dcb-algorithm;
> snps,priority = <0x2>;
> };
>
> queue2 {
> + snps,weight = <0x14>;
> snps,dcb-algorithm;
> snps,priority = <0x4>;
> };
>
> queue3 {
> + snps,weight = <0x18>;
> snps,dcb-algorithm;
> snps,priority = <0x8>;
> };
> @@ -2013,23 +2018,28 @@ queue3 {
>
> mtl_tx_setup1: tx-queues-config {
> snps,tx-queues-to-use = <4>;
> + snps,tx-sched-wrr;
>
> queue0 {
> + snps,weight = <0x10>;
> snps,dcb-algorithm;
> snps,priority = <0x1>;
> };
>
> queue1 {
> + snps,weight = <0x12>;
> snps,dcb-algorithm;
> snps,priority = <0x2>;
> };
>
> queue2 {
> + snps,weight = <0x14>;
> snps,dcb-algorithm;
> snps,priority = <0x4>;
> };
>
> queue3 {
> + snps,weight = <0x18>;
> snps,dcb-algorithm;
> snps,priority = <0x8>;
> };
> --
> 2.34.1
>
next prev parent reply other threads:[~2026-08-07 15:27 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-22 8:53 [PATCH 0/5] Fix GBETH TX scheduling policy for RZ/{V2H, V2N, G3E, T2H, N2H} Ovidiu Panait
2026-07-22 8:53 ` [PATCH 1/5] arm64: dts: renesas: r9a09g057: Switch GBETH TX queue scheduling to WRR Ovidiu Panait
2026-07-22 8:53 ` [PATCH 2/5] arm64: dts: renesas: r9a09g056: " Ovidiu Panait
2026-07-22 9:04 ` sashiko-bot
2026-07-22 8:53 ` [PATCH 3/5] arm64: dts: renesas: r9a09g047: " Ovidiu Panait
2026-08-07 15:27 ` Tommaso Merciai [this message]
2026-07-22 8:53 ` [PATCH 4/5] arm64: dts: renesas: r9a09g077: " Ovidiu Panait
2026-07-22 9:07 ` sashiko-bot
2026-07-22 8:53 ` [PATCH 5/5] arm64: dts: renesas: r9a09g078: " Ovidiu Panait
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=anX5UAtB_PtITkxq@tom-desktop \
--to=tommaso.merciai.xr@bp.renesas.com \
--cc=biju.das.jz@bp.renesas.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=geert+renesas@glider.be \
--cc=krzk+dt@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=magnus.damm@gmail.com \
--cc=ovidiu.panait.rb@renesas.com \
--cc=prabhakar.mahadev-lad.rj@bp.renesas.com \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.