You are not logged in.
# lspci | grep Ethernet
02:00.0 Ethernet controller: Qualcomm Atheros Killer E2400 Gigabit Ethernet Controller (rev 10)
# dmesg | grep enp2s0
[ 5.829055] alx 0000:02:00.0 enp2s0: renamed from eth0
[ 17.818452] alx 0000:02:00.0 enp2s0: NIC Up: 100 Mbps Full
# ethtool enp2s0
Settings for enp2s0:
Supported ports: [ TP ]
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
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 100Mb/s
Duplex: Full
Auto-negotiation: on
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
MDI-X: Unknown
Current message level: 0x000060e4 (24804)
link ifup rx_err tx_err hw wol
Link detected: yes
I tried swaping patch cables with another box off same switch, same cable works fine for other box in full 1000Mb/s but not the box with my issue so I can rule out faulty cable.
When I try to manually set it... it get the following...
# ethtool -s enp2s0 speed 1000 duplex full
netlink error: link settings update failed
netlink error: Invalid argument
Its a dumb switch, and I power cycled, etc... 4 other boxes are in 1000Mb/s mode just fine off the switch so... I am a bit stumped with this one...
Offline
Auto-negotiation: on
First ensure to bring the NIC down, then try
# ethtool -s enp2s0 autoneg offf speed 1000 duplex full
Offline
I tried that via this first....
ip link set dev enp2s0 down
Then attempting any form / combination of ethtool -s results in the same message
# ethtool -s enp2s0 speed 1000 duplex full autoneg off
netlink error: link settings update failed
netlink error: Invalid argument
....
# ethtool -s enp2s0 speed 10 duplex full autoneg off
netlink error: link settings update failed
netlink error: Invalid argument
I also tried creating a NetworkManager system-connections for the named connection... which seems to have "NO" effect as well...
[connection]
id=Wired connection 1
uuid=4462661f-a2b5-3105-bd77-2d06938f770d
type=ethernet
autoconnect-priority=-999
interface-name=enp2s0
permissions=
timestamp=1609735993
[ethernet]
auto-negotiate=false
duplex=full
speed=1000
mac-address-blacklist=
[ipv4]
dns-search=
method=auto
[ipv6]
addr-gen-mode=stable-privacy
dns-search=
method=auto
Offline
creating a NetworkManager system-connections
If NM is still running, attempts to bring the NIC down will likely fail.
=> First stop NM and ensure no other NIC controlling service is running - in doubt post the output of
find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-40s | %s\n", $(NF-0), $(NF-1)) }' | sort -f
to list enabled ones
Offline
I disabled NetworkManager, rebooted and captured the following outputs
# dmesg | grep enp2s0
[ 5.596209] alx 0000:02:00.0 enp2s0: renamed from eth0
# find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-40s | %s\n", $(NF-0), $(NF-1)) }' | sort -f
dirmngr.socket | sockets.target.wants
getty@tty1.service | getty.target.wants
gpg-agent-browser.socket | sockets.target.wants
gpg-agent-extra.socket | sockets.target.wants
gpg-agent.socket | sockets.target.wants
gpg-agent-ssh.socket | sockets.target.wants
mssql-server.service | multi-user.target.wants
nginx.service | multi-user.target.wants
p11-kit-server.socket | sockets.target.wants
php-fpm.service | multi-user.target.wants
remote-fs.target | multi-user.target.wants
smb.service | multi-user.target.wants
sshd.service | multi-user.target.wants
wsdd.service | multi-user.target.wants
# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp2s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether d8:cb:8a:9f:46:7a brd ff:ff:ff:ff:ff:ff
# ethtool -s enp2s0 speed 1000 duplex full autoneg off
netlink error: link settings update failed
netlink error: Invalid argument
Offline
Didn't completely read the thread, but seems related, https://www.mail-archive.com/netdev@vge … 58204.html
Did you try the lts kernel?
Offline
have not tried lts... but another odd behavior I am getting is that I realized by accident when I logged in via a sudoer account vs root.... ethtool -s seems to work as long as I do not specify speed 1000... meaning I can sudo ethtool -s enp2s0 speed 10 duplex full autoneg off etc... but gets the error if I try to specify speed 1000...
But when logged in as root at tty1... ethtool returns the invalid argument "period" no matter what.
Offline
I installed lts and get the same end result, however the error response from ethtool/netlink is formatted differently ...
# ethtool -s enp2s0 speed 1000 duplex full autoneg off
Cannot set new settings: Invalid argument
not setting speed
not setting duplex
not setting autoneg
under lts.... I also tried this
# ethtool -s enp2s0 speed 1000
Cannot advertise speed 1000
Cannot set new settings: Invalid argument
not setting speed
better verbose under lts.... anyway.....
Last edited by grininmonkey (2021-01-04 15:27:52)
Offline
Ok... I am both happy and puzzled...
Settings for enp2s0:
Supported ports: [ TP ]
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
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: Unknown
Current message level: 0x000060e4 (24804)
link ifup rx_err tx_err hw wol
Link detected: yes
I repeated the following with consistent results and I don't understand it.... my only assumption is that the NIC on the MB is simply a cable snob of some sorts and is extremely picky.
I have 5 devices with 1G nics plugged into my dumb switch... all using 6ft 5e patch cables. 4 ( original ) have had no issue linking at 1000, never once messed with this. The new box is a repurpose older MB/CPU that I originally ran Arch on more than a year ago before new hardware... just dusted it off and decided to do something with it...
So anyway... I was unplugging from my main computer and plugging that cable into this box with this issue and same with others... after just trying lts I thought... hey.. I do have a Cat6 cable... let me try for giggles and why not.... [ pow ] it linked @ 1000... so I then decided to reboot into mainline kernel... [ rut row ] will only link @ 100 with new Cat6 cable... reboot into lts and it links @ 1000 with Cat6 cable.... plug in any of the other 4 in use and working fine @ 1000 Cat5e cables... and nope.. only links @ 100...
This is the oddest network experience I have had so far.... its a 2016 MB i7 6700K and going to be a dev LEMP box.. so LTS is fine... but very weird none the less..
Last edited by grininmonkey (2021-01-04 16:01:05)
Offline
I have the same issue with the same driver.
I do not believe it's a cable issue, I've been using the same Cat7 cable for 2 years.
After some time, the adapter resets and the speed is stuck at 100mbs. No changes in the software can reset it, the only way I can reset it is to unplug the cable and plug it back in.
There's nothing obvious in dmesg:
[ 8.495117] alx 0000:05:00.0 eth0: Qualcomm Atheros AR816x/AR817x Ethernet [e0:d5:5e:23:6c:9f]
[ 8.510285] alx 0000:05:00.0 enp5s0: renamed from eth0
[ 11.989920] alx 0000:05:00.0 enp5s0: NIC Up: 1 Gbps Full
[ 2453.620391] alx 0000:05:00.0 enp5s0: Link Down
[ 2473.519550] alx 0000:05:00.0 enp5s0: NIC Up: 100 Mbps Full
[ 3023.145846] alx 0000:05:00.0 enp5s0: Link Down
[ 3028.845658] alx 0000:05:00.0 enp5s0: NIC Up: 1 Gbps Full
On boot I got 1Gb, then after nearly an hour the adapter reset and changed to 100mbit. The second 1gb connection is me disconnecting and reconnecting the cable.
grininmonkey, have you noticed the same problem reoccur?
Offline
Full ethtool output under all circumstances (right after boot, after being dropped to 100MB and after the re-plug gets you back to 1GB)?
nb. that
- #1 it's always the cable (the plugs are part of the cable ;-)
- the link can fail or be reset on the other side as well (check the router log)
alx doesn't provide any parameters for power saving and I assume this isn't a notebook?
Offline