2

I recently upgraded to Ubuntu 24.10 from 24.04 and everything appears to be working well with the exception of one thing: Upon resuming from suspend the network card is completely off. The lights on the card are completely out. This is a cabled adapter, not a wifi.

Thus far nothing I have done except a reboot has caused the network card to restart, such as restarting the network manager. The network card in "ip a" shows state down.

2: enp6s0: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether c8:7f:54:cf:f6:44 brd ff:ff:ff:ff:ff:ff

I have not found any way to reactivate it. I have tried systemctl restart NetworkManager as well as some other commands and I have tried fiddling with it in the UI.

Thus far only a reboot causes the card to reactivate and function normally.

lshw -C network identifies my network card as this:

[    1.615681] Intel(R) 2.5G Ethernet Linux Driver
  *-network
       description: Ethernet interface
       product: Ethernet Controller I225-V
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:06:00.0
       logical name: enp6s0
       version: 01

My belief is that the suspend operation sent a command to suspend the power to the network adapter and then on resume there is no resuming of power to the adapter. But I am currently lost because I think this is some kind of hardware setting.

I have tried the following suggestions from AI to try to power it up from this state:

sudo ethtool -r enp6s0
Cannot restart autonegotiation: No such device
sudo ip link set enp6s0 up
RTNETLINK answers: No such device
sudo service udev restart

But all thus far to no avail.

Update

After some online research, I found a way to restart the network adapter.

modprobe -r igc
modprobe igc
systemctl restart NetworkManager

That brought the interface back up and made the network usable. But I had some VirtualBox Ubuntu VMs running. And they didn't seem to recover from the process.

I believe that suspend is powering down the network card completely, but I would like it not to do that.

1 Answers1

1

Happy day. I seem to have found a resolution to the problem.

Details: I identified that the "systemctl restart NetworkManager" after the modprobe remove and add of the igc driver was non-essential -- I think I just didn't wait long enough the first time I tried it.

But the modeprobe -r igc/modprobe igc solution was non-optimal because when I would run some ubuntu virtualmachines in VirtualBox, they didn't seem to recover. The remove and re-add of the network driver caused it be "different". So they needed a reboot.

In the end, AI pointed me to add eee_enable=0 and pcie_port_pm=off in /etc/defaults/grub like this:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash eee_enable=0 pcie_port_pm=off"

This disables: Energy Efficient Ethernet (EEE) and PCIe power management

However, this didn't do it on its own. I am going to leave them disabled, but the thing that made the ultimate difference was adding wakeonlan

In /etc/netplan/*.yaml (the file that corresponds to your network card)

network:
  version: 2
  ethernets:
    enp6s0:
      wakeonlan: true

I don't really need wakeonlan, but my belief is that having it enabled causes the network card to stay awake enough to hear a wake on lan signal and thereby works past my problem.