Metacomment: Not sure where to post this. Stackoverflow sent me to askubuntu, they told me it's off-topic there. Trying here again, please show some courtesy and point me in the right direction if I'm once again "off-topic".
TL;DR: My network interface seem to not accept/load/install the appropriate kernel driver module, e1000e. Only hint to a solution was from a dmesg hinting at that another driver (igb) is loaded.
Using onboard LAN, not using USB-tethering from phone.
Days of trying to figure out why the onboard LAN broke and why it won't load/bind the driver from the kernel module.
The affected hardware:
Gigabyte GA-Z87-UD3H - Onboard LAN - Intel Corporation Ethernet Connection I217-V (rev 05)
I have tried this on three boots: the original Kubuntu 18.04 LTS. Most of the troubleshooting happened on this boot but I also tried some other ones to see if it was release specific.
I've mod probed and compiled from source kernel modules for these kernels: 4.15.0-96-lowlatency (came with 18.04 ubuntu-studio) 5.3.0-26/43/45/46-generic (original Kubuntu 18.04, pop_os) 5.4.0-21/23-lowlatency (ubuntu-studio 20.04).
It used to work on the Kubuntu 18.04 installation for the last 6months-year. It has worked in the past on the same hardware under win 8.1, win 10, macOS maverick/sierra/high sierra as well as ubuntu 16.04, 18.04.
sudo lshw -c network [sudo] password for -: *-network UNCLAIMED description: Ethernet controller product: Ethernet Connection I217-V vendor: Intel Corporation physical id: 19 bus info: pci@0000:00:19.0 version: 05 width: 32 bits clock: 33MHz capabilities: pm msi cap_list configuration: latency=0 resources: memory:f7900000-f791ffff memory:f793d000-f793dfff ioport:f080(size=32)
sudo lspci -nnk gives me
00:19.0 Ethernet controller : Intel Corporation Ethernet Connection I217-V [8086:153b] (rev 05) DeviceName: Onboard LAN Subsystem: Gigabyte Technology Co., Ltd Ethernet Connection I217-V [1458:e000] Kernel modules: e1000e
Notice the lack of the line "Kernel driver in use:" that I get on all devices/modules that do work.
modprobe e1000e modprobe -a e1000e
Doesn't do anything.
So I tried to compile from source: (for the 5.4 module I followed steps from https://github.com/koljah-de/e1000e-dkms-debian to change a line in /usr/src/e1000e-3.6.0/src/kcompat.h:
line:command 2799:#include <linux/pci-aspm.h>
line:command 2799:#include <linux/pci.h>
which worked fine)
I tried to simply
make make install
and reboot the system, nothing. I tried the deb install method from the previously mentioned git. I tried
dkms add -m e1000e -v 3.6.0 dkms build -m e1000e -v 3.6.0 dkms -m e1000e -v 3.6.0
Last ditch attempt to try to bind the interface manually:
# apt install dpdk
sudo dpdk-devbind.py -b e1000e 0000:00:19.0 [sudo] password for -: Error: bind failed for 0000:00:19.0 - Cannot bind to driver e1000e
from journalctl I have these two relevant lines:
apr 10 19:55:43 a-Z87X-UD3H kernel: e1000e: probe of 0000:00:19.0 failed with error -2 apr 10 19:55:42 a-Z87X-UD3H kernel: e1000e 0000:00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
And from dmesg these:
[ 2173.754182] igb: Intel(R) Gigabit Ethernet Network Driver - version 5.6.0-k [ 2173.754183] igb: Copyright (c) 2007-2014 Intel Corporation. [ 5735.904821] e1000e 0000:00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode [ 5736.742509] e1000e: probe of 0000:00:19.0 failed with error -2 [ 5736.742623] e1000e 0000:00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode [ 5737.579534] e1000e: probe of 0000:00:19.0 failed with error -2
Judging from this dmesg the interface is loading the igb kernel module instead which has not showed up anywhere else, but this might be the cause of the problem. However, rmmod/modprobe -r hasn't managed to detach it as it's not technically loaded... I have also been unsuccessful in reproducing this dmesg. I'm stumped.
I'm considering getting another ssd and trying another distro completely to rule out that it's a debian/ubuntu specific issue. Then again, I might as well get a cheap ethernet interface if I do.
thanks for taking the time to read this c: