Hello everyone,
I’ve been running Fedora 42 KDE-Plasma Desktop for a while now.
Everything works pretty well, except my internet connection.
My wired internet connection stops working “randomly”, and I’ve yet to find out what’s wrong.
Running journalctl -xe did show “set-link: unable to retrieve link negotiation” at one point. But I’m not sure if this means anything or not. nmcli device status shows the wired connection.
DEVICE TYPE STATE CONNECTION
eno1 ethernet connected Wired connection 1
lo loopback connected (externally) lo
enp15s0 ethernet unavailable –
The only thing I can say however, is that when this problem occurs, bringing the interface down using ip link set eno1 down works. But bringing it up using ip link set eno1 up will display an error
Cannot find device “eno1”
Also restarting NetworkManager using systemctl restart NetworkManager does not work.
Even trying to connect to my router (192.168.178.1) will not work (using LibreWolf and Firefox).
The only fix is restarting my system entirely.
I’ve had this same exact issue using Fedora 42 workstation.
I’m not experiencing this issue using Windows 10.
How can I best troubleshoot this?
Thanks in advance and please let me know!
My first thought is that it is probably something with power management gone wrong again. I’d try to figure out what driver it is using and see if there is a setting to turn of power management for that device.
When reporting an issue you should try to provide enough detail to allow others to reproduce the your issue. Network issues involve the ethernet device, system firmware, and the linux module/driver. If your hardware is a popular model from a major vendor there is a good chance that others have encountered your issue.
Post hardware and software details (e.g., output from running inxi -Fzxx in a terminal (posted as web-searchabe pre-formatted text).
Ensure that Fedora packages and vendor firmware fully updated a)so you aren’t chasing a solved problem and b) to make it easier for others to duplicate your configuration
Use the LHDB to see if your hardware works for others, which could point to network issues external to your system.
Years ago I was part of a team running a workshop at a research/teaching lab and had problem with internet in Linux while Windows users did not have problems. The Windows version used then was configured to request internet access suitable for streaming video, so you should mention if the problem is associated with a network shared with many other users.
You achieve the same with nmcli c down devicename. And to restart you use up. With nmcli c it shows you the connections available/active.
Just in case you use an usb adapter for your network, you have to switch of power saving for usb. This way the adapter not looses the connection when your computer goes to sleep.
Thank you very much for the suggestions!
So after confirming I had the latest driver, I saw the interface uses the igc driver.
After knowing this, I started looking for potential driver updates, but stumbled on a Reddit post talking about igc having issues with ASUS motherboards specifically.
Basically what I’ve done (and I’ve yet to see if it really solves the problem) is give the pcie_port_pm=off as a kernel argument.
Basically:
vi /etc/default/grub
Append GRUB_CMDLINE_LINUX with pcie_port_pm=off like (the post talks about GRUB_CMDLINE_LINUX_DEFAULT, which I did not have):
GRUB_CMDLINE_LINUX=“rhgb quiet pcie_port_pm=off”
Save the file
Update grub configuration using sudo grub2-mkconfig -o /boot/grub2/grub.cfg
Reboot the machine.
Check if the argument is being used suing cat /proc/cmdline
And should show the appended argument pcie_port_pm=off.
So far, my ethernet has been working fine…
I will come back if the problem is resolved.
So I’ve been running a couple of days without any issues!
It seems that adding the arguments to the kernel did work. However, pcie_port_pm=off was not sufficient for me.
In the same Reddit post, someone mentioned having to add pcie_aspm.policy=performance to the kernel arguments as well.
This is the complete way of how I managed to fix this issue:
sudo vi /etc/default/grub
Append GRUB_CMDLINE_LINUX with pcie_port_pm=off AND pcie_aspm.policy=performance. So for example:
Update grub configuration using sudo grub2-mkconfig -o /boot/grub2/grub.cfg
Reboot the machine
Check if both arguments are being used using cat /proc/cmdline
And should show the appended arguments pcie_port_pm=off pcie_aspm.policy=performance at the end.
Thanks to everyone here for the help!
Appeared to have been power management after all!