Puncte:1

Intel I219 se confruntă cu pierderi uriașe de pachete

drapel ru

Există câteva discuții și se pare că această problemă a fost rezolvată. Cu toate acestea, literatura este puțină. Așa că am scris această notă și sper că îi va ajuta pe alții.

Simptom

Seria Intel Ethernet Connection I219, inclusiv I219-V și I219-LM, nu funcționează pe Linux, cu aproximativ 1 Mb/s pe speedtest.net și pierderi de ping de 30-50% în LAN. Aceasta este o problemă în kernel, așa că atât Ubuntu, cât și Fedora vor suferi de aceeași problemă. Utilizatorii de la 4.19 la 5.11 au raportat toți această problemă. Actualizarea folosind apt nu ajută.

Detalii

  • ping de la o altă mașină
$ ping -i 0,2 -W 0,2 -c 100 -s 1000 192.168.1.2
100 de pachete transmise, 56 primite, 44% pierdere de pachete, timp 20195 ms
  • informatie despre dispozitiv
# lspci -vvvnn -s 00:1f.6
00:1f.6 Controler Ethernet [0200]: Intel Corporation Ethernet Connection (14) I219-V [8086:15fa] (rev 11)
    Subsistem: CLEVO/KAPOK Computer Ethernet Connection (14) I219-V [1558:50e1]
    Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
    Stare: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=rapid >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latență: 0
    Întrerupere: pinul A direcționat către IRQ 129
    Regiunea 0: memorie la 82380000 (32 de biți, neprelucibilă) [dimensiune=128K]
    Capabilități: [c8] Power Management versiunea 3
        Indicatori: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
        Stare: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=1 PME-
    Capabilități: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Adresă: 00000000fee00338 Date: 0000
    Driver kernel în uz: e1000e
    Module kernel: e1000e
# ethtool -i enp0s31f6
driver: e1000e
versiunea: 5.11.0-40-generic
versiunea de firmware: 0.4-4
expansion-rom-version: 
autobuz-info: 0000:00:1f.6
suporturi-statistici: da
suporturi-test: da
suportă-eeprom-access: da
suportă-registru-dump: da
suportă-priv-flags: da
Puncte:1
drapel ru

Motiv

Gestionarea energiei oprește memoria cache/memoria adaptorului de rețea (Consultați [7] pentru mai multe informații).

Soluții alternative

  • Deci trebuie să dezactivez gestionarea energiei. Stările de lucru pentru dispozitivele Intel se numesc C-State. Stările C variază de la C0 la Cn. C0 indică o stare activă (vezi Ghidul utilizatorului Intel/C-State). Prima soluție este setarea C-State maximă nu foarte mare [3,4].

    vi /etc/default/grub
    # adăugați intel_idle.max_cstate=1 la GRUB_CMDLINE_LINUX_DEFAULT după 
    "destul de splash"
    # astfel încât acea linie să arate ca
    GRUB_CMDLINE_LINUX_DEFAULT="Quiet Splash intel_idle.max_cstate=1"
    # apoi salvați și executați
    update-grub
    # apoi reporniți, puteți confirma că acest lucru este aplicat de
    cat /proc/cmdline|grep intel
    cat /sys/module/intel_idle/parameters/max_cstate
    

    Puteți chiar să setați max_cstate la 0; cineva fa asta.

  • Schimbați un semnalizator despre controlul alimentării adaptorului de rețea [5].

    # pe mașina mea, valoarea implicită este „auto”
    cat /sys/bus/pci/devices/0000\:00\:16.0/power/control
    echo on > /sys/bus/pci/devices/0000\:00\:16.0/power/control
    # verificați că este „pornit” acum
    cat /sys/bus/pci/devices/0000\:00\:16.0/power/control
    

Literaturi

  1. https://bugzilla.redhat.com/show_bug.cgi?id=1652865 Acesta este un raport din ianuarie 2019. el folosește nucleul 4.29. Nu a fost oferită nicio soluție.

  2. https://bugzilla.kernel.org/show_bug.cgi?id=213651 propune

    • descarca-ma* (nu merge la mine)
    • Setări BIOS -> System Management -> Intel AMT Capability, comutați-l de la „Restrict MEBx Access” la „Disabled” (nu merge la mine -- BIOS-ul meu nu are această opțiune)
  3. https://bugzilla.kernel.org/show_bug.cgi?id=213377 este exact aceeasi problema. Ei propun

    • pornirea aceluiași nucleu(e) cu „intel_idle.max_cstate=1” (Pentru instrucțiuni, consultați Cum să setați intel_idle.max_cstate=1) (aproape functioneaza -- viteza de descărcare și pierderea pachetului este fixată, dar încărcarea este zero)
  4. https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1927925

    • Ei susțin soluția în [3] lucrări
    • Comentariul #93 explică de ce se întâmplă acest bug, dar prea specializat; Nu pot înțelege pe deplin.
  5. https://bugs.launchpad.net/ubuntu/+source/linux-oem-5.10/+bug/1930754

    • Trucul este să setați parametrul kernel-ului de pornire „pcie_aspm=off” în „/etc/default/grub”
      Ca aceasta:
      GRUB_CMDLINE_LINUX_DEFAULT="splash pcie_aspm=off"
      După acea alergare;
      update-grub
      
      (nu merge la mine)
    • Ei confirmă că soluțiile din [2] nu funcționează.
    • ecou pe | sudo tee /sys/bus/pci/devices/0000\:00\:16.0/power/control (aproape functioneaza -- viteza de descărcare și pierderea pachetului este fixată, dar încărcarea este zero)
  6. Rețea cu fir extrem de lentă

    • Solicitantul a făcut multă muncă, inclusiv a raportat asta compilarea driverului este imposibil
    • Niciunul dintre răspunsuri nu funcționează pentru mine.
drapel in
Nu sunt sigur dacă acest lucru contează ca un răspuns, deoarece afirmați că unele remedieri sugerate nu funcționează, iar altele vă permit să descărcați, dar să vă omorâți încărcările. Ar putea avea mai mult sens să rezumați acest lucru ca părți ale întrebării, în speranța că un membru al comunității are o soluție care vă va permite să descărcați *și* încărcați cu o rată de transmisie rezonabilă
Youran avatar
drapel ru
@matigo Ce zici acum? Arată mai mult ca un răspuns?

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.