[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <48924158-5ce6-41b5-18af-c4aff205311d@gmail.com>
Date: Mon, 14 Jan 2019 10:03:57 -0800
From: Florian Fainelli <f.fainelli@...il.com>
To: Andrew Lunn <andrew@...n.ch>, Samu Nuutamo <samu.nuutamo@...cit.fi>
Cc: netdev@...r.kernel.org, Vivien Didelot <vivien.didelot@...il.com>,
"David S. Miller" <davem@...emloft.net>
Subject: Re: Regression: mv88e6xxx packet loss after 4.18's PHYLINK merge
On 1/14/19 6:23 AM, Andrew Lunn wrote:
> On Mon, Jan 14, 2019 at 01:34:44PM +0200, Samu Nuutamo wrote:
>> Hi,
>>
>> We have an imx6q-b450v3 board that has one of the switch ports configured as a
>> fixed link. After upgrading the kernel to version 4.18 the link has experienced
>> a small amount of packet loss, around 0.15%.
>>
>> The issue was bisected to a commit: aab9c4067d23 net: dsa: Plug in PHYLINK support
>>
>> After enabling debug we could see that the new phylink code causes the link to
>> reset once every second:
>>
>> [ 309.992368] mv88e6085 gpio-0:00 enembc: phylink_mac_config: mode=fixed//100Mbps/Full adv=00000,00000208 pause=10 link=1 an=1
>> [ 309.998451] mv88e6085 gpio-0:00: p5: Force link down
>> [ 309.998869] mv88e6085 gpio-0:00: p5: Speed set to 100 Mbps
>> [ 309.999280] mv88e6085 gpio-0:00: p5: Force full duplex
>> [ 309.999895] mv88e6085 gpio-0:00: p5: Force link up
>> [ 311.032400] mv88e6085 gpio-0:00 enembc: phylink_mac_config: mode=fixed//100Mbps/Full adv=00000,00000208 pause=10 link=1 an=1
>> [ 311.038248] mv88e6085 gpio-0:00: p5: Force link down
>> [ 311.038660] mv88e6085 gpio-0:00: p5: Speed set to 100 Mbps
>> [ 311.039069] mv88e6085 gpio-0:00: p5: Force full duplex
>> [ 311.039678] mv88e6085 gpio-0:00: p5: Force link up
>> [ 312.072328] mv88e6085 gpio-0:00 enembc: phylink_mac_config: mode=fixed//100Mbps/Full adv=00000,00000208 pause=10 link=1 an=1
>> [ 312.077603] mv88e6085 gpio-0:00: p5: Force link down
>> [ 312.078010] mv88e6085 gpio-0:00: p5: Speed set to 100 Mbps
>> [ 312.078417] mv88e6085 gpio-0:00: p5: Force full duplex
>> [ 312.079026] mv88e6085 gpio-0:00: p5: Force link up
>
> Hi Samu
>
> Thanks for the report.
>
> I think we should be fixing this from the other end. Why does PHYLINK
> reset the link once per second? If you have time, please could you
> investigate that.
Samu, is this fixed link using a GPIO to determine the link state? Does
this patch help at all?
diff --git a/drivers/net/dsa/mv88e6xxx/chip.c
b/drivers/net/dsa/mv88e6xxx/chip.c
index 8a517d8fb9d1..9dedb9b22c13 100644
--- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -721,7 +721,7 @@ static void mv88e6xxx_mac_config(struct dsa_switch
*ds, int port,
return;
if (mode == MLO_AN_FIXED) {
- link = LINK_FORCED_UP;
+ link = state->link;
speed = state->speed;
duplex = state->duplex;
} else if (!mv88e6xxx_phy_is_internal(ds, port)) {
--
Florian
Powered by blists - more mailing lists