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

사용 가능한 모든 장치/모듈에 "커널 드라이버 사용 중:" 줄이 누락되어 있습니다.

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를 구입하고 다른 배포판을 완전히 시도하는 것을 고려하고 있습니다. 그렇다면 원할 경우 저렴한 이더넷 포트를 구입하는 것이 좋습니다.

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

관련 정보