r8169 driver in leap 15.3 (5.3.18-59.19 kernel) only gives 100Mb/sec and not gigabit speed

I did a fresh install of LEAP 15.3 (on a machine running LEAP 15.1). After successfully installing everything (with very few hiccups I must say), I noticed my ethernet driver (r8169) is now capped at 100Mb/sec and not gigabit. I was getting gigabit speeds in LEAP 15.1 (don’t know the kernel range sorry).

Here’s the relevant output. As you can see, the speed is 100Mb/sec instead of gigabit. I’ve also attached relevant information from dmesg. Is this related to a linux kernel bug?

agape-anand:/home/anand # ethtool eth0
Settings for eth0:
Supported ports: TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: Symmetric Receive-only
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: Symmetric Receive-only
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Link partner advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Link partner advertised pause frame use: Symmetric
Link partner advertised auto-negotiation: Yes
Link partner advertised FEC modes: Not reported
Speed: 100Mb/s
Duplex: Full
Auto-negotiation: on
master-slave cfg: preferred slave
master-slave status: slave
Port: MII
PHYAD: 0
Transceiver: external
Supports Wake-on: pumbg
Wake-on: d
Link detected: yes

agape-anand:/home/anand # dmesg |grep r8169
4.491170] r8169 0000:03:00.0: can’t disable ASPM; OS doesn’t have ASPM control
4.549083] libphy: r8169: probed
4.549870] r8169 0000:03:00.0 eth0: RTL8168g/8111g, 6c:4b:90:4c:a5:c3, XID 4c0, IRQ 137
4.549871] r8169 0000:03:00.0 eth0: jumbo features [frames: 9194 bytes, tx checksumming: ko]
5.204480] Generic FE-GE Realtek PHY r8169-300:00: attached PHY driver [Generic FE-GE Realtek PHY] (mii_bus:phy_addr=r8169-300:00, irq=IGNORE)
5.457850] r8169 0000:03:00.0 eth0: Link is Down
17.448425] r8169 0000:03:00.0 eth0: Link is Up - 100Mbps/Full - flow control rx/tx

Try installing the r8168 from packman. The r8168 works much better the r8169. Or you could download the r8168 from git and set it up with dkms.

Set link speed to “auto negotiate” or needed parameters.
Default is 100Mbit, half duplex.

@Svyatko

When I do

agape-anand:/home/anand # ethtool -s eth0 speed 1000 autoneg on duplex full

I get in dmesg

[350200.177550] r8169 0000:03:00.0 eth0: Link is Down

I had to switch back to

agape-anand:/home/anand # ethtool -s eth0 speed 100 autoneg on duplex full

upon which dmesg reports

[350304.465573] r8169 0000:03:00.0 eth0: Link is Down
[350430.020047] r8169 0000:03:00.0 eth0: Link is Up - 100Mbps/Full - flow control rx/tx

And I get a viable ethernet connection.

@peteh100

I’ll try the r8168 driver from packman and will blacklist r8169 next. Thanks!

Please use Code-Tags when you post something from Konsole…

Try to disable ASPM (power management) for card in BIOS.
Test with another cable.

Note network speed will not be greater then the slowest card on the network.

Not sure I understand you.

I have half a dozen oS boxes in my LAN, some Gigabit and others 100 Mbit, connected to a Gigabit switch. All Gigabit talk to each other at full speed, regardless of how many 100 Mbit card there are in the LAN.

@anandrajan:

Please post the content of ‘/etc/sysconfig/network/ifcfg-eth0’.

  • “STARTMODE” should be set to “auto”
  • “MTU” should be “1500” for most Ethernet hardware.

@dcurtisfra, here you go.

cat /etc/sysconfig/network/ifcfg-eth0

NAME=’’
BOOTPROTO=‘dhcp’
STARTMODE=‘hotplug’
ZONE=’’

Since this didn’t have the MTU Information, here’s

ip a

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 6c:4b:90:4c:a5:c3 brd ff:ff:ff:ff:ff:ff
altname enp3s0
inet 192.168.50.171/24 brd 192.168.50.255 scope global dynamic noprefixroute eth0
valid_lft 61459sec preferred_lft 61459sec
inet6 fe80::6e4b:90ff:fe4c:a5c3/64 scope link noprefixroute
valid_lft forever preferred_lft forever

@svyatko

There was no option in the Lenovo Ideacentre 720-IKL BIOS to disable ASPM for the onboard Realtek ethernet

Please use Code-Tags:
https://forums.opensuse.org/showthread.php/536143-Using-Code-Tags-Around-Your-Paste

You have not to quote the command, paste the whole output in a Code-Tag incl. the wole input line:

linux64:~ # cat /etc/sysconfig/network/ifcfg-eth0
NETWORK=''
DHCLIENT_SET_DEFAULT_ROUTE='yes'
IPADDR='192.168.0.2/24'
MTU='1500'
BOOTPROTO='static'
STARTMODE='auto'
ZONE='public'
linux64:~ # 

It all now a little bit better to read…

@anandrajan:

The mileage you’re experiencing may be due to the following ‘ifcfg-eth0’ issues –

  • The variable “STARTMODE” is set to “hotplug
    ” – this needs the “wickedd-nanny” service … - If a physical Ethernet interface, what is the reason for using the value “hotplug
    ”?*=2]Normally the value “auto” is more than sufficient for physical Ethernet interfaces …
  • The “MTU” variable isn’t set.

Default setting for notebooks is “hotplug” - for power saving IMHO.
Default setting for notebooks is NetworkManager, not wicked.
Works OK with MTU isn’t set there - because NetworkManager can set it (MTU = auto works OK).

To OP: try to use another card - USB plugged or another.

When card first connects there are handshaking protocols that determine the speed of the network connection the card adjusts speed to match. A switch is an active device thus can maintain multiple speeds. Maybe a port on the switch is broken. Try plugging into another port

I connected the ethernet cable to USB (front panel USB 3.1 Gen 2) just to check. I get gigabit ethernet this way. Thanks! I’ll stick with this.

Download speeds from speedtest.net go up to 920Mb/sec. Output from ethtool also shows gigabit.

agape-anand:/home/anand # ethtool eth1
Settings for eth1:
        Supported ports:  TP    MII ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 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
        Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                             100baseT/Half 100baseT/Full
                                             1000baseT/Full
        Link partner advertised pause frame use: Symmetric
        Link partner advertised auto-negotiation: Yes
        Link partner advertised FEC modes: Not reported
        Speed: 1000Mb/s
        Duplex: Full
        Auto-negotiation: on
        Port: MII
        PHYAD: 32
        Transceiver: internal
        Supports Wake-on: pumbg
        Wake-on: g
        Current message level: 0x00007fff (32767)
                               drv probe link timer ifdown ifup rx_err tx_err tx_queued intr tx_done rx_status pktdata hw wol
        Link detected: yes

What about bug report?

What should I do?

There’s bug 202275 in kernel bugzilla which is still open and may be related to my problem.

Should I look for a corresponding opensuse bugzilla entry? And report this if I can’t find one.

Thank you so much for the ethernet to USB 3.1 suggestion. It has already made a tangible difference in handling big data transfers from the server.

When (and if) kernel bug will be solved, we may wait for a patch in Leap for 1-3 years. That’s why it is better to report it now.
To accelerate Ethernet connection you may use 2.5G/5G cards: https://en.wikipedia.org/wiki/2.5GBASE-T_and_5GBASE-T
(Chip RTL8156 & others).

For materialised thanks use 6-rayed star button in the left bottom corner of a post.

@Svyatko

For materialised thanks use 6-rayed star button in the left bottom corner of a post.

Done.

What about bug report?

Filed bug 1190184.

Correct me, if I am wrong but I think there is a bug in a new kernel 5.8.0-34.