4

I recently switched to Ubuntu 22.04. Before that, I used Windows 10. I had to buy a new ethernet card (TP-Link TG-3468) because my mainboard's ethernet port stopped working. With the ethernet card, ethernet kept disconnecting. After some googling, I disabled "Energy Efficient Ethernet" on Windows. This screenshot does not depict Windows 10, but it looks the same way. I now have the same issue on Ubuntu, and I wanted to ask where I can disable the same setting for my ethernet card but on Ubuntu 22.04

Output of cat /etc/default/grub:

If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash igb.EEE=0"
GRUB_CMDLINE_LINUX=""

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

Output of ip a:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp6s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 5c:a6:e6:54:e3:c9 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.109/24 brd 192.168.1.255 scope global dynamic noprefixroute enp6s0
       valid_lft 85874sec preferred_lft 85874sec
    inet6 2a02:120b:7f5:cab0:59b5:41c3:736a:687a/64 scope global temporary dynamic 
       valid_lft 86384sec preferred_lft 14384sec
    inet6 2a02:120b:7f5:cab0:7a76:9c37:2714:87c/64 scope global dynamic mngtmpaddr noprefixroute 
       valid_lft 86384sec preferred_lft 14384sec
    inet6 fe80::a39f:468f:9437:b5a7/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

Output of lspci -nnk | grep 0200 -A3:

06:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8161] (rev 15)
    Subsystem: Realtek Semiconductor Co., Ltd. TP-Link TG-3468 v4.0 Gigabit PCI Express Network Adapter [10ec:8168]
    Kernel driver in use: r8169
    Kernel modules: r8169

2 Answers2

4

You can disable Energy Efficient Ethernet in kernel parameters.

Run

sudo nano /etc/default/grub

and change

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

to

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash igb.EEE=0"

Save the file and run

sudo update-grub

Note: This setting doesn't work for you because you have a wrong first line of /etc/default/grub. You accidentally removed # from the beginning.

If you change this file, run 'update-grub' afterwards to update

should be

# If you change this file, run 'update-grub' afterwards to update

That should disable the feature after a reboot.

You can check the status by

ethtool --show-eee enp6s0

You can also disable EEE using ethtool, but it won't stay after a reboot.

ethtool --set-eee enp6s0 eee off
Pilot6
  • 92,041
0

I believe that the alternate driver for your device, r8168, has eee_enable as a manipulable parameter. Let’s install it and see if it helps.

sudo -i
apt update
apt install -y r8168-dkms
echo “options r8168 eee_enable=0”  >  /etc/modprobe.d/r8168.conf
exit

Reboot. Is there any improvement?

chili555
  • 61,330