e1000e 및 Intel 기가비트 이더넷 I217-V 문제

e1000e 및 Intel 기가비트 이더넷 I217-V 문제

메타댓글: 이 글을 어디에 게시해야 할지 잘 모르겠습니다. Stackoverflow가 저를 askubuntu로 보냈는데, 거기에서는 주제와 다르다고 하더군요. 여기에서 다시 시도해 보시고 제가 다시 "주제에서 벗어난" 경우에는 예의를 보여주시고 올바른 방향을 알려 주시기 바랍니다.

요약: 내 네트워크 인터페이스가 적절한 커널 드라이버 모듈인 e1000e를 허용/로드/설치하지 못하는 것 같습니다. 해결책에 대한 힌트는 다른 드라이버(igb)가 로드되었음을 암시하는 dmesg에서 나온 것뿐입니다.

예상 결과:
전화기의 USB 테더링을 사용하지 않고 온보드 LAN을 사용합니다.

실제 결과:
온보드 LAN이 고장난 이유와 커널 모듈에서 드라이버를 로드/바인딩하지 못하는 이유를 알아내려고 며칠 동안 노력했습니다.

영향을 받는 하드웨어:
Gigabyte GA-Z87-UD3H - 온보드 LAN - Intel Corporation 이더넷 연결 I217-V(rev 05)

도전했다:
나는 이것을 세 가지 부츠, 즉 원래 Kubuntu 18.04 LTS에서 시도했습니다. 대부분의 문제 해결은 이번 부팅에서 발생했지만 특정 릴리스인지 확인하기 위해 다른 문제도 시도했습니다.

나는 다음 커널에 대한 소스 커널 모듈에서 모드를 조사하고 컴파일했습니다: 4.15.0-96-lowlatency (18.04 ubuntu-studio와 함께 제공) 5.3.0-26/43/45/46-generic (원본 Kubuntu 18.04, pop_os) 5.4.0-21/23-낮은 지연 시간(ubuntu-studio 20.04).

지난 6개월 동안 Kubuntu 18.04 설치 작업을 했습니다. 과거에는 win 8.1, win 10, macOS maverick/sierra/high sierra 및 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가 나에게 제공합니다.

00:19.0 Ethernet controller [0200]: 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

작동하는 모든 장치/모듈에 표시되는 "Kernel Driver in use:" 줄이 없다는 점에 주목하세요.

modprobe e1000e 
modprobe -a e1000e

아무것도 하지 않습니다.

그래서 소스에서 컴파일을 시도했습니다. (5.4 모듈의 경우 다음 단계를 따랐습니다.https://github.com/koljah-de/e1000e-dkms-debian/usr/src/e1000e-3.6.0/src/kcompat.h에서 줄을 변경하려면:

line:command
2799:#include <linux/pci-aspm.h>

에게

line:command
2799:#include <linux/pci.h>

잘 작동했습니다)

간단하게 해보려고 했는데

make make install

아무것도 시스템을 재부팅하지 마십시오. 이전에 언급한 git에서 deb 설치 방법을 시도했습니다. 나는 노력했다

dkms add -m e1000e -v 3.6.0
dkms build -m e1000e -v 3.6.0
dkms  -m e1000e -v 3.6.0

인터페이스를 수동으로 바인딩하려는 마지막 시도는 다음과 같습니다.

# 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

Journalctl에는 다음 두 가지 관련 줄이 있습니다.

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

그리고 dmesg에서 다음을 확인하세요:

[ 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

이 dmesg로 판단하면 인터페이스는 다른 곳에서는 표시되지 않은 igb 커널 모듈을 대신 로드하고 있지만 이것이 문제의 원인일 수 있습니다. 그러나 rmmod/modprobe -r은 기술적으로 로드되지 않았기 때문에 분리하지 못했습니다... 또한 이 dmesg를 재현하는 데 실패했습니다. 나는 당황했다.

나는 다른 SSD를 구입하고 그것이 데비안/우분투 특정 문제라는 것을 완전히 배제하기 위해 다른 배포판을 시도하는 것을 고려하고 있습니다. 그렇다면 다시, 그렇게 한다면 값싼 이더넷 인터페이스를 얻는 것이 나을 것입니다.

시간을 내서 읽어주셔서 감사합니다씨:

관련 정보