On Fri, May 25, 2018 at 10:25 AM, Andre Ruiz <andre.r...@gmail.com> wrote:
>
> Alex,
>
> The tests I'm making at work and at home, both to cheap 8 port switches, one
> is an Encore Gigabit Switch and the other is a TP-Link Fast Ethernet Switch.
> Although they are cheap hardware, both behave well in normal conditions.
> Right now I'm connecting to the Fast Ethernet one.
>
> Just upgraded to fedora today-released kernel (and therefore, rebooted):
>
> [root@thinkpad ~]# uname -a
> Linux thinkpad.tokenlabs 4.16.11-300.fc28.x86_64 #1 SMP Tue May 22 18:29:09
> UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
>
> [root@thinkpad ~]# ethtool enp0s31f6
> Settings for enp0s31f6:
> Supported ports: [ TP ]
> Supported link modes:   10baseT/Half 10baseT/Full
>                         100baseT/Half 100baseT/Full
>                         1000baseT/Full
> Supported pause frame use: No
> Supports auto-negotiation: Yes
> Supported FEC modes: Not reported
> Advertised link modes:  10baseT/Half 10baseT/Full
>                         100baseT/Half 100baseT/Full
>                         1000baseT/Full
> Advertised pause frame use: No
> Advertised auto-negotiation: Yes
> Advertised FEC modes: Not reported
> Speed: 100Mb/s
> Duplex: Full
> Port: Twisted Pair
> PHYAD: 1
> Transceiver: internal
> Auto-negotiation: on
> MDI-X: on (auto)
> Supports Wake-on: pumbg
> Wake-on: g
> Current message level: 0x00000007 (7)
>        drv probe link
> Link detected: yes
>
> As you can see, the cable is connected and link is at 100Mbit/s as expected.
> DHCP got IP and all is well. Now I'm going to sleep the thinkpad. I'm back.
> And it now only gets 10Mbit/s:
>
> [root@thinkpad ~]# ethtool enp0s31f6
> Settings for enp0s31f6:
> Supported ports: [ TP ]
> Supported link modes:   10baseT/Half 10baseT/Full
>                         100baseT/Half 100baseT/Full
>                         1000baseT/Full
> Supported pause frame use: No
> Supports auto-negotiation: Yes
> Supported FEC modes: Not reported
> Advertised link modes:  10baseT/Half 10baseT/Full
>                         100baseT/Half 100baseT/Full
>                         1000baseT/Full
> Advertised pause frame use: No
> Advertised auto-negotiation: Yes
> Advertised FEC modes: Not reported
> Speed: 10Mb/s
> Duplex: Full
> Port: Twisted Pair
> PHYAD: 1
> Transceiver: internal
> Auto-negotiation: on
> MDI-X: off (auto)
> Supports Wake-on: pumbg
> Wake-on: g
> Current message level: 0x00000007 (7)
>        drv probe link
> Link detected: yes
>
> As per your sugestions, let's limit the advertised modes:
>
> [root@thinkpad ~]# ethtool -s enp0s31f6 advertise 2c
> [root@thinkpad ~]# ethtool enp0s31f6
> Settings for enp0s31f6:
> Supported ports: [ TP ]
> Supported link modes:   10baseT/Half 10baseT/Full
>                         100baseT/Half 100baseT/Full
>                         1000baseT/Full
> Supported pause frame use: No
> Supports auto-negotiation: Yes
> Supported FEC modes: Not reported
> Advertised link modes:  100baseT/Half 100baseT/Full
>                         1000baseT/Full
> Advertised pause frame use: No
> Advertised auto-negotiation: Yes
> Advertised FEC modes: Not reported
> Speed: 100Mb/s
> Duplex: Full
> Port: Twisted Pair
> PHYAD: 1
> Transceiver: internal
> Auto-negotiation: on
> MDI-X: off (auto)
> Supports Wake-on: pumbg
> Wake-on: g
> Current message level: 0x00000007 (7)
>        drv probe link
> Link detected: yes
>
>
> I didn't even had to unplug/replug the cable, as soon as issuing the command
> it re-negotiated to 100Mbit/s.
>
> Just to be sure, I repluged and it kees getting 100Mbit/s. Then I undid the
> advertised modes limiting (put them all back) and it still get's 100Mbit/s,
> even after replugging, many times. Then, I slept the notebook again and the
> 10Mbit problem came back. Curious....
>
> In all this testes traffic was passing and the only problem was the link
> speed (if I can reproduce the other situation where traffic does not pass
> I'l send a note).
>
> Andre

It sounds as though what you may be seeing is some sort of autoneg
issue with the link partner where it is always renegotiating to the
last speed it was linked at. In the case of doing a suspend/resume
cycle you will autoneg down to 10Mb/s normally as the NIC uses a mode
called "low power link up" where it will try to negotiate to the
lowest possible speed.

I need to work on getting a reproduction on my end in order to really
work to resolve this issue since it sounds like we are getting down
the the PHY layer in terms of the issues being seen. In the meantime
you could probably use the autoneg limiting as a workaround for the
issues seen in suspend/resume.

Thanks.

- Alex

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to