Linux Mint - Intel 82579LM NIC 및 하드웨어 장치가 중단됩니다.

Linux Mint - Intel 82579LM NIC 및 하드웨어 장치가 중단됩니다.

몇 달 전, 저는 Supermicro X9SCM 시스템 보드가 장착된 시스템에 Linux Mint 19.1 x64를 설치했습니다. X9SCM에는 두 개의 통합 NIC가 있습니다.

Intel 82574L Gigabit Network Connection
Intel 82579LM Gigabit Network Connection (Lewisville)

Intel 82574L 기가비트 네트워크 연결 문제가 해결되었습니다.

Intel 82579LM 기가비트 네트워킹(Lewisville)은 NetworkManager가 비활성화된 Linux 커널 브리지를 사용하고 있습니다.

대략 6분마다 Intel 82579LM 기가비트 네트워크 연결(Lewisville)은 다음을 보고합니다.

e1000e 0000:00:19.0 eno1: Detected Hardware Unit Hang:
    TDH                  <d2>
    TDT                  <43>
    next_to_use          <43>
    next_to_clean        <d1>
    buffer_info[next_to_clean]:
    time_stamp           <103d3f01c>
    next_to_watch        <d2>
    jiffies              <103d3f8e0>
    next_to_watch.status <0>
    MAC Status             <40080083>
    PHY Status             <796d>
    PHY 1000BASE-T Status  <3c00>
    PHY Extended Status    <3000>
    PCI Status             <10>
e1000e 0000:00:19.0 eno1: Reset adapter unexpectedly
br0: port 1(eno1) entered disabled state
e1000e: eno1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
br0: port 1(eno1) entered blocking state
br0: port 1(eno1) entered forwarding state

다양한 이더넷 케이블과 스위치 포트를 시도했지만 아무것도 변경되지 않았습니다.

답변1

Intel 82579LM 기가비트 네트워크 연결(Lewisville)에는 기본적으로 오프로드가 활성화되어 있으며, 오프로드를 비활성화하면 이 문제를 해결할 수 있습니다.

네트워크 카드 장치를 확인합니다.

ip addr show
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0 state UP group default qlen 1000

제거가 활성화되어 있는지(켜짐) 확인합니다.

sudo ethtool -k eno1
tcp-segmentation-offload: on
generic-segmentation-offload: on

테스트하려면 일시적으로(재부팅할 때마다 재설정) 제거를 비활성화합니다.

sudo ethtool -K eno1 tso off
sudo ethtool -K eno1 gso off

"하드웨어 장치 정지 감지" 및 "예기치 않은 어댑터 재설정"에 대한 로그 항목이 중지되어야 합니다.

NetworkManager가 비활성화된 상태에서 영구 구성 변경 사항을 추가하려면:

sudo nano /etc/network/interfaces

다음을 추가하세요.

post-up /sbin/ethtool -K eno1 tso off gso off

-> Ctrl + o -> Enter -> Ctrl + x

컴퓨터를 다시 시작합니다.

제거가 비활성화되어 있는지 확인합니다(해제).

sudo ethtool -k eno1
tcp-segmentation-offload: off
generic-segmentation-offload: off

나는 이것을 알아내는 데 며칠을 보냈습니다. 다른 사람에게 도움이되기를 바랍니다.

---------- 네트워크 관리자 ----------

이 특정 시나리오에서는 오프로딩을 비활성화하고 NetworkManager를 비활성화하고 QEMU/KVM에 대한 Linux 커널 브리지를 사용해야 했습니다. 브리지를 구성할 때까지는 정지 및 재설정 문제가 있는지 알지 못했습니다. 그렇다면 시작 스크립트에 적절한 명령을 추가하여 NetworkManager를 계속 사용하면서 동일한 결과를 얻을 수 있습니다. 다음은 테스트되지 않았습니다.

sudo crontab -e

나노의 경우 "1" 버튼을 누르세요.

마지막 줄에 다음을 입력합니다.

@reboot sleep 10 && ethtool -K eno1 tso off
@reboot sleep 10 && ethtool -K eno1 gso off

sudo shutdown -r now

---------- lshw 출력 ----------

*-network
     description: Ethernet interface
     product: 82579LM Gigabit Network Connection (Lewisville)
     vendor: Intel Corporation
     physical id: 19
     bus info: pci@0000:00:19.0
     logical name: eno1
     version: 05
     serial: <REMOVED>
     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 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
     resources: irq:30 memory:df900000-df91ffff memory:df925000-df925fff ioport:f020(size=32)

관련 정보