Thread (21 messages) flat view 21 messages, 4 authors, 2026-02-06

RE: [PATCH net] net: renesas: rswitch: fix forwarding offload statemachine

From: Michael Dege <hidden>
Date: 2026-02-05 13:46:42
Also in: linux-renesas-soc, lkml

Hello Nikita,
-----Original Message-----
From: Nikita Yushchenko <nikita.yoush@cogentembedded.com>
Sent: Thursday, February 5, 2026 2:39 PM
To: Michael Dege <redacted>; Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>;
Andrew Lunn [off-list ref]; David S. Miller [off-list ref]; Eric Dumazet
[off-list ref]; Jakub Kicinski [off-list ref]; Paolo Abeni [off-list ref]
Cc: netdev@vger.kernel.org; linux-renesas-soc@vger.kernel.org; linux-kernel@vger.kernel.org
Subject: Re: [PATCH net] net: renesas: rswitch: fix forwarding offload statemachine
quoted
quoted
quoted
if (rdev_for_l2_offload() && rdev->forwarding_requested)
      rswitch_change_l2_hw_offloading(rdev, true, false); else
      rswitch_change_l2_hw_offloading(rdev, false, false);

since rswitch_change_l2_hw_offloading() has internal check for the
current state and returns early if the requested change is already applied.
Unfortunately, this has a side effect, e.g., if you pull the cable on
tsn0 and the link goes down, you will see that the offloading is
disabled on all ports connected to the bridge and not just on tsn0.
Quite strange, is anything else logged?  E.g. some messages from linux bridge layer?

Nikita
Here is the log from the version without "if else"

[   83.107759] renesas_eth_sw e6880000.ethernet tsn0: Link is Down
[   83.108734] br0: port 1(tsn0) entered disabled state
[   83.109669] renesas_eth_sw e6880000.ethernet tsn0: stopping hw learning
[   83.110519] renesas_eth_sw e6880000.ethernet tsn0: stopping hw forwarding
[   83.111405] renesas_eth_sw e6880000.ethernet tsn1: stopping hw forwarding
[   91.299976] renesas_eth_sw e6880000.ethernet tsn0: Link is Up - 1Gbps/Full - flow control off
[   91.357634] br0: port 1(tsn0) entered blocking state
[   91.358309] br0: port 1(tsn0) entered forwarding state
[   91.359185] renesas_eth_sw e6880000.ethernet tsn1: starting hw forwarding
[   91.360104] renesas_eth_sw e6880000.ethernet tsn0: starting hw learning
[   91.360943] renesas_eth_sw e6880000.ethernet tsn0: starting hw forwarding
[   91.361802] renesas_eth_sw e6880000.ethernet tsn1: stopping hw forwarding

And this is what it should look like:

[   81.027632] renesas_eth_sw e6880000.ethernet tsn0: Link is Down
[   81.028662] br0: port 1(tsn0) entered disabled state
[   81.029582] renesas_eth_sw e6880000.ethernet tsn0: stopping hw learning
[   81.030431] renesas_eth_sw e6880000.ethernet tsn0: stopping hw forwarding
[   90.243832] renesas_eth_sw e6880000.ethernet tsn0: Link is Up - 1Gbps/Full - flow control off
[   90.305291] br0: port 1(tsn0) entered blocking state
[   90.305956] br0: port 1(tsn0) entered forwarding state
[   90.306838] renesas_eth_sw e6880000.ethernet tsn0: starting hw learning
[   90.307725] renesas_eth_sw e6880000.ethernet tsn0: starting hw forwarding

Best regards

Michael
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help