M BUZZ CRAZE NEWS
// news

20.04 with I217-LM driverversion=3.8.7-NAPI won't take address

By Mia Morrison

I see the i217 on board NICs are highly problematic for a lot of people and I've tried the fixes listed - basically updating the driver (to 3.8.7, the latest as of this date) date and setting pcie_aspm=off and rebooting.

The card will not take DHCP, not a huge problem, but it also won't take a fixed address. ifconfig returns

eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet6 fe80::3bc8:75fd:5185:caaf prefixlen 64 scopeid 0x20<link> ether 50:65:f3:39:5b:03 txqueuelen 1000 (Ethernet) RX packets 18805 bytes 1537159 (1.5 MB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 476 bytes 114536 (114.5 KB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 20 memory 0xef100000-ef120000 

sudo modprobe -r e1000e && sudo modprobe e1000e followed by sudo update-initramfs -u with a fixed address (.17) yields

eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.100.17 netmask 255.255.255.0 broadcast 192.168.100.255 inet6 fe80::3bc8:75fd:5185:caaf prefixlen 64 scopeid 0x20<link>

but pinging the gateway still fails:

ping 192.168.100.11
PING 192.168.100.11 (192.168.100.11) 56(84) bytes of data.
From 192.168.100.17 icmp_seq=1 Destination Host Unreachable
From 192.168.100.17 icmp_seq=2 Destination Host Unreachable
From 192.168.100.17 icmp_seq=3 Destination Host Unreachable
From 192.168.100.17 icmp_seq=4 Destination Host Unreachable

(that address is also unreachable/inpingable from other machines on the same LAN segment.)

Note that the NIC works fine under windows 7 (dual boot) and Ubuntu has no trouble with my cheezy USB wifi interface.

I've ordered a cheap Realtek RTL8111H based PCIe NIC but to where I am it is at least 2 weeks away. Wifi works, as noted, but I'm trying to do some video work and the long latency 30-50mbps shared wifi link is pretty painful compared to gigabit copper. Plus Synergy sucks over wifi.

If anyone has any clues, I'd be grateful. The essential bits are:

$ uname -a
Linux dg-dl 5.8.0-34-generic #37~20.04.2-Ubuntu SMP Thu Dec 17 14:53:00 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
$ sudo lshw -c network *-network description: Ethernet interface product: Ethernet Connection I217-LM vendor: Intel Corporation physical id: 19 bus info: pci@0000:00:19.0 logical name: eno1 version: 05 serial: 50:65:f3:39:5b:03 size: 1Gbit/s capacity: 1Gbit/s width: 32 bits clock: 33MHz capabilities: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.8.7-NAPI duplex=full firmware=0.13-4 ip=192.168.100.17 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s resources: irq:26 memory:ef100000-ef11ffff memory:ef139000-ef139fff ioport:f040(size=32) *-network description: Wireless interface physical id: 3 bus info: usb@3:1 logical name: wlxaca2131ef18e serial: ac:a2:13:1e:f1:8e capabilities: ethernet physical wireless configuration: broadcast=yes driver=mt7601u driverversion=5.8.0-34-generic firmware=N/A ip=192.168.100.47 link=yes multicast=yes wireless=IEEE 802.11
$ modinfo e1000e | grep version
version: 3.8.7-NAPI
srcversion: 035BD57B8D93A45D1668FCC
$ lspci -nnk | grep 0200 -A3
00:19.0 Ethernet controller [0200]: Intel Corporation Ethernet Connection I217-LM [8086:153a] (rev 05) DeviceName: Onboard LAN Subsystem: Hewlett-Packard Company Ethernet Connection I217-LM [103c:1906] Kernel driver in use: e1000e
$ dmesg | grep e1000e
[16807.605025] e1000e: Intel(R) PRO/1000 Network Driver - 3.8.7-NAPI
[16807.605026] e1000e: Copyright(c) 1999 - 2020 Intel Corporation.
[16807.605193] e1000e 0000:00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
[16807.697918] e1000e 0000:00:19.0 0000:00:19.0 (uninitialized): registered PHC clock
[16807.770728] e1000e 0000:00:19.0 eth0: (PCI Express:2.5GT/s:Width x1) 50:65:f3:39:5b:03
[16807.770731] e1000e 0000:00:19.0 eth0: Intel(R) PRO/1000 Network Connection
[16807.770756] e1000e 0000:00:19.0 eth0: MAC: 11, PHY: 12, PBA No: FFFFFF-0FF
[16807.773042] e1000e 0000:00:19.0 eno1: renamed from eth0
[16813.146515] e1000e 0000:00:19.0 eno1: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx

3 Answers

well... system update to kernel 5.8.0-40 and same problem again. 4 e1000e drivers in /usr/lib/modules at

/usr/lib/modules/5.8.0-40-generic/kernel/drivers/net/ethernet/intel/e1000e
/usr/lib/modules/5.8.0-38-generic/kernel/drivers/net/ethernet/intel/e1000e
/usr/lib/modules/5.8.0-36-generic/kernel/drivers/net/ethernet/intel/e1000e
/usr/lib/modules/5.8.0-34-generic/updates/drivers/net/ethernet/intel/e1000e

removed those as before, rebooted, but no luck this time.

$ lspci -nnk | grep 0200 -A3
00:19.0 Ethernet controller [0200]: Intel Corporation Ethernet Connection I217-LM [8086:153a] (rev 05) DeviceName: Onboard LAN Subsystem: Hewlett-Packard Company Ethernet Connection I217-LM [103c:1906] Kernel driver in use: e1000e
$ modinfo e1000e
filename: /lib/modules/5.8.0-40-generic/kernel/drivers/net/ethernet/intel/e1000e/e1000e.ko
modinfo: ERROR: could not get modinfo from 'e1000e': No such file or directory

Moving the e1000e kernel module to the 5.8.0-40 directory did not resolve things :/

$ ifconfig
eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet6 fe80::3bc8:75fd:5185:caaf prefixlen 64 scopeid 0x20<link> ether 50:65:f3:39:5b:03 txqueuelen 1000 (Ethernet) RX packets 221 bytes 34968 (34.9 KB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 62 bytes 10857 (10.8 KB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 20 memory 0xef100000-ef120000
(link "good" but will not connect pass datas)
$ modinfo e1000e | grep version
version: 3.2.6-k
srcversion: 0E07DC95DBB1EAF587D0B9D
(same as was working before)
$ lspci -nnk | grep 0200 -A3
00:19.0 Ethernet controller [0200]: Intel Corporation Ethernet Connection I217-LM [8086:153a] (rev 05) DeviceName: Onboard LAN Subsystem: Hewlett-Packard Company Ethernet Connection I217-LM [103c:1906] Kernel driver in use: e1000e

So back to plan b, installing a PCI NIC and bypassing the mobo I217-LM.

I moved the e1000e kernel modules out of lib/modules, specifically

/lib/modules/5.8.0-34-generic/updates/drivers/net/ethernet/intel/e1000e/e1000e.ko
/lib/modules/5.8.0-34-generic/kernel/drivers/net/ethernet/intel/e1000e/e1000e.ko

Then rebooted. This is working, even DHCP. :-)

I'm not sure why it didn't work with the default install. IT appears to be a driver problem - 3.2.6k seems to be built into the kernel. That's good because

  • e1000e-3.8.4 at the intel site won't compile.
  • e1000e-3.8.7 at sourceforge ("Fixed compilation on latest kernels after changes in Linux OS API") compiles but didn't work for me.

Updating the info provided above:

 sudo lshw -c network *-network description: Ethernet interface product: Ethernet Connection I217-LM vendor: Intel Corporation physical id: 19 bus info: pci@0000:00:19.0 logical name: eno1 version: 05 serial: 50:65:f3:39:5b:03 size: 1Gbit/s capacity: 1Gbit/s width: 32 bits clock: 33MHz capabilities: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.2.6-k duplex=full firmware=0.13-4 ip=192.168.100.17 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s resources: irq:26 memory:ef100000-ef11ffff memory:ef139000-ef139fff ioport:f040(size=32) *-network DISABLED description: Wireless interface physical id: 3 bus info: usb@3:1 logical name: wlxaca2131ef18e serial: ac:a2:13:1e:f1:8e capabilities: ethernet physical wireless configuration: broadcast=yes driver=mt7601u driverversion=5.8.0-36-generic firmware=N/A link=no multicast=yes wireless=IEEE 802.11

(cheap wifi dongle is disabled, still have network datas!)

$ modinfo e1000e | grep version
version: 3.2.6-k
srcversion: 0E07DC95DBB1EAF587D0B9D
$ lspci -nnk | grep 0200 -A3
00:19.0 Ethernet controller [0200]: Intel Corporation Ethernet Connection I217-LM [8086:153a] (rev 05) DeviceName: Onboard LAN Subsystem: Hewlett-Packard Company Ethernet Connection I217-LM [103c:1906]
$ dmesg | grep e1000e
[ 1.235411] e1000e: Intel(R) PRO/1000 Network Driver - 3.2.6-k
[ 1.235412] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[ 1.235550] e1000e 0000:00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
[ 1.310701] e1000e 0000:00:19.0 0000:00:19.0 (uninitialized): registered PHC clock
[ 1.379360] e1000e 0000:00:19.0 eth0: (PCI Express:2.5GT/s:Width x1) 50:65:f3:39:5b:03
[ 1.379362] e1000e 0000:00:19.0 eth0: Intel(R) PRO/1000 Network Connection
[ 1.379397] e1000e 0000:00:19.0 eth0: MAC: 11, PHY: 12, PBA No: FFFFFF-0FF
[ 1.400975] e1000e 0000:00:19.0 eno1: renamed from eth0
[ 21.124245] e1000e 0000:00:19.0 eno1: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx

EDIT - updated to Kernel 5.8.0.40 and the network card failed exactly the same way, but the same fix did not work:

well... system update to kernel 5.8.0-40 and same problem again. 4 e1000e drivers in /usr/lib/modules at

/usr/lib/modules/5.8.0-40-generic/kernel/drivers/net/ethernet/intel/e1000e
/usr/lib/modules/5.8.0-38-generic/kernel/drivers/net/ethernet/intel/e1000e
/usr/lib/modules/5.8.0-36-generic/kernel/drivers/net/ethernet/intel/e1000e
/usr/lib/modules/5.8.0-34-generic/updates/drivers/net/ethernet/intel/e1000e

removed those as before, rebooted, but no luck this time.

$ lspci -nnk | grep 0200 -A3
00:19.0 Ethernet controller [0200]: Intel Corporation Ethernet Connection I217-LM [8086:153a] (rev 05) DeviceName: Onboard LAN Subsystem: Hewlett-Packard Company Ethernet Connection I217-LM [103c:1906] Kernel driver in use: e1000e
$ modinfo e1000e
filename: /lib/modules/5.8.0-40-generic/kernel/drivers/net/ethernet/intel/e1000e/e1000e.ko
modinfo: ERROR: could not get modinfo from 'e1000e': No such file or directory

so tried moving that one back, and

# modinfo e1000e | grep version
version: 3.2.6-k
srcversion: 0E07DC95DBB1EAF587D0B9D

This is the version that was working with kernel 5.8.0.34.
So I guess it is time for plan B: add-in network card, having to debug this every kernel update is a less optimal solution.

Solved the problem - installed a new network card. It would have been quite annoying if this were a laptop with this horrible i217 NIC on the mobo, but as a SFF workstation, there was space for a better supported card. I installed a Syba Dual Port Gig card ('cause why not two ports...) SD-PEX24041. Works as expected, do not need to rely on the dubious (but far more reliable than intel's NIC) USB-WiFI interface.

ens3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.100.49 netmask 255.255.255.0 broadcast 192.168.100.255 inet6 fe80::dc98:973e:fd70:58ce prefixlen 64 scopeid 0x20<link> ether 00:13:3b:5a:e5:bd txqueuelen 1000 (Ethernet) RX packets 36297 bytes 4150450 (4.1 MB) RX errors 0 dropped 6 overruns 0 frame 0 TX packets 25729 bytes 1998990 (1.9 MB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

and now

$ lspci -nnk | grep 0200 -A3
00:19.0 Ethernet controller [0200]: Intel Corporation Ethernet Connection I217-LM [8086:153a] (rev 05) DeviceName: Onboard LAN Subsystem: Hewlett-Packard Company Ethernet Connection I217-LM [103c:1906] Kernel driver in use: e1000e
--
05:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 15) Subsystem: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:0123] Kernel driver in use: r8169 Kernel modules: r8169
06:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 15) Subsystem: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:0123] Kernel driver in use: r8169 Kernel modules: r8169

go Realtek, boo Intel.

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy