Re: [PATCH] net: marvell: mvpp2: phylink requires the link interrupt

From: Willy Tarreau
Date: Sat Dec 14 2019 - 03:24:19 EST


On Sat, Dec 14, 2019 at 07:56:02AM +0000, Russell King - ARM Linux admin wrote:
> On Sat, Dec 14, 2019 at 07:51:27AM +0000, Russell King - ARM Linux admin wrote:
> > On Fri, Dec 13, 2019 at 04:34:03PM -0800, Jakub Kicinski wrote:
> > > On Tue, 10 Dec 2019 22:33:05 +0000, Russell King wrote:
> > > > phylink requires the MAC to report when its link status changes when
> > > > operating in inband modes. Failure to report link status changes
> > > > means that phylink has no idea when the link events happen, which
> > > > results in either the network interface's carrier remaining up or
> > > > remaining permanently down.
> > > >
> > > > For example, with a fiber module, if the interface is brought up and
> > > > link is initially established, taking the link down at the far end
> > > > will cut the optical power. The SFP module's LOS asserts, we
> > > > deactivate the link, and the network interface reports no carrier.
> > > >
> > > > When the far end is brought back up, the SFP module's LOS deasserts,
> > > > but the MAC may be slower to establish link. If this happens (which
> > > > in my tests is a certainty) then phylink never hears that the MAC
> > > > has established link with the far end, and the network interface is
> > > > stuck reporting no carrier. This means the interface is
> > > > non-functional.
> > > >
> > > > Avoiding the link interrupt when we have phylink is basically not
> > > > an option, so remove the !port->phylink from the test.
> > > >
> > > > Tested-by: Sven Auhagen <sven.auhagen@xxxxxxxxxxxx>
> > > > Tested-by: Antoine Tenart <antoine.tenart@xxxxxxxxxxx>
> > > > Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxx>
> > >
> > > Fixes: 4bb043262878 ("net: mvpp2: phylink support") ?
> > >
> > > Seems like you maybe didn't want this backported to stable hence
> > > no fixes tag?
> >
> > Correct, because backporting just this patch will break the
> > Macchiatobin.
> >
> > This patch is dependent on the previous two patches, which are more
> > about correct use of the API. I suspect if you try to backport the
> > series, things will get very hairly very quickly.
>
> Oh, sorry, too early, wrong patch. Yes, please add the fixes tag.

I prefer :-) Because indeed I only have this one on top of 5.4.2 which
solved the problem. You can even add my tested-by if you want (though I
don't care).

Thanks,
Willy