lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sat, 16 Jul 2022 22:17:30 +0200 From: Andrew Lunn <andrew@...n.ch> To: Sean Anderson <sean.anderson@...o.com> Cc: "David S . Miller" <davem@...emloft.net>, Jakub Kicinski <kuba@...nel.org>, Madalin Bucur <madalin.bucur@....com>, netdev@...r.kernel.org, Paolo Abeni <pabeni@...hat.com>, Eric Dumazet <edumazet@...gle.com>, linux-arm-kernel@...ts.infradead.org, Russell King <linux@...linux.org.uk>, linux-kernel@...r.kernel.org, Alexandru Marginean <alexandru.marginean@....com>, Heiner Kallweit <hkallweit1@...il.com>, Vladimir Oltean <olteanv@...il.com> Subject: Re: [PATCH net-next v3 10/47] net: phylink: Adjust link settings based on rate adaptation On Fri, Jul 15, 2022 at 05:59:17PM -0400, Sean Anderson wrote: > If the phy is configured to use pause-based rate adaptation, ensure that > the link is full duplex with pause frame reception enabled. Note that these > settings may be overridden by ethtool. > > Signed-off-by: Sean Anderson <sean.anderson@...o.com> > --- > > Changes in v3: > - New > > drivers/net/phy/phylink.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/net/phy/phylink.c b/drivers/net/phy/phylink.c > index 7fa21941878e..7f65413aa778 100644 > --- a/drivers/net/phy/phylink.c > +++ b/drivers/net/phy/phylink.c > @@ -1445,6 +1445,10 @@ static void phylink_phy_change(struct phy_device *phydev, bool up) > pl->phy_state.speed = phy_interface_speed(phydev->interface, > phydev->speed); > pl->phy_state.duplex = phydev->duplex; > + if (phydev->rate_adaptation == RATE_ADAPT_PAUSE) { > + pl->phy_state.duplex = DUPLEX_FULL; > + rx_pause = true; > + } I would not do this. If the requirements for rate adaptation are not fulfilled, you should turn off rate adaptation. A MAC which knows rate adaptation is going on can help out, by not advertising 10Half, 100Half etc. Autoneg will then fail for modes where rate adaptation does not work. The MAC should also be declaring what sort of pause it supports, so disable rate adaptation if it does not have async pause. Andrew
Powered by blists - more mailing lists