Fixing NIC link power on/power off recycling after Leap 16.0 upgrade

After a session with Gemini AI as a helper, I came up with a fix to stop the recycling power on / power off messages on my internet eth0 link. My system uses network manager.

Part 1: Intel Network Card (e1000e) Flapping / Disconnecting Fix

The modern kernel shifts introduced in Leap 16.0 enable aggressive Energy Efficient Ethernet (EEE) power-saving features by default. This causes certain Intel NICs to constantly drop the link (Link is Down / Link is Up).

Because ethtool is no longer installed by default on minimal Leap 16.0 installations, you must install it first, and then create a NetworkManager dispatcher script to disable EEE permanently across reboots.

Step 1: Install the missing network utility

sudo zypper install ethtool

Step 2: Create a NetworkManager automated script

sudo nano /etc/NetworkManager/dispatcher.d/99-disable-eee.sh

Step 3: Paste the following block into the file, then save and exit (Ctrl+O, Enter, Ctrl+X)

#!/bin/bash
INTERFACE=$1
ACTION=$2
if [ “$INTERFACE” = “eth0” ] && [ “$ACTION” = “up” ]; then
/usr/sbin/ethtool --set-eee eth0 eee off
fi

Step 4: Grant the script execution permissions

sudo chmod +x /etc/NetworkManager/dispatcher.d/99-disable-eee.sh

Step 5: Bounce the interface to apply the fix immediately

sudo nmcli device down eth0 && sudo nmcli device up eth0

Step 6: Verify that EEE is successfully disabled

sudo ethtool --show-eee eth0

Your terminal output should now show EEE status: disabled. The script will seamlessly handle this on every system boot.
- Randall

Sample dmesg block

[86304.310470] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Down
[86308.897078] [  T65347] e1000e 0000:00:19.0 eth0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[86355.960047] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Down
[86360.667631] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[86452.154233] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Down
[86456.577803] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[86735.155969] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Down
[86739.112641] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[86802.429350] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Down
[86806.342069] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[86812.546289] [  T65347] e1000e 0000:00:19.0 eth0: NIC Link is Down
[86815.558134] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[86819.381369] [  T66409] e1000e 0000:00:19.0 eth0: NIC Link is Down
[86822.942016] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[86823.771245] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Down
[86827.655904] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[87004.659724] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Down
[87009.624496] [  T65347] e1000e 0000:00:19.0 eth0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[87016.808643] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Down
[87020.024313] [  T62021] e1000e 0000:00:19.0 eth0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
[87514.607963] [  T64859] e1000e 0000:00:19.0 eth0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx

But SmartPowerDownEnable for the e1000e module is disabled by default?

What Intel cards, I have a few I21{8,9}-LM here running the e1000e module and don’t have any issues?

Honest Malcolm, I don’t know how to respond to you with a good reply. All I know is that my NIC Link was cycling and I needed to fix it.

What is you NIC card? /sbin/lspci -nnk | grep -EA3 "Net|Eth" Normally flapping interfaces are cable, faulty/mis configured switch port, or auto-negotiation…

Only my 10Gbe devices don’t support EEE, but my I21{8,9}-LM, RTL8111/8168/8211/8411 and RTL8126 all do (and active) and never had an issue…

00:19.0 Ethernet controller [0200]: Intel Corporation 82579LM Gigabit Network Connection (Lewisville) [8086:1502] (rev 05)
        DeviceName: Onboard LAN
        Subsystem: Hewlett-Packard Company Device [103c:1589]
        Kernel driver in use: e1000e
--
07:00.0 Network controller [0280]: Realtek Semiconductor Co., Ltd. RTL8812AE 802.11ac PCIe Wireless Network Adapter [10ec:8812] (rev 01)
        Subsystem: ASUSTeK Computer Inc. Device [1043:86dd]
        Kernel driver in use: rtl8821ae
        Kernel modules: rtl8821ae

That is an older card, even Intel dropped support some years ago… Wireless (and bluetooth) card in a mini PCIe slot?

Consider getting a single or dual PCIe X1 adaptor if you have a spare slot…

Also, your solution can also be achived with a simple onshot systemd service running the required command inline… :wink:

1 Like