Co to powoduje? pcieport 0000: 00: 03.0: Błąd magistrali PCIe: AER / Bad TLP


20

Poniżej widzę takie komunikaty o błędach:

Nov 15 15:49:52 x99 kernel: pcieport 0000:00:03.0: AER: Multiple 
Corrected error received: id=0018 Nov 15 15:49:52 x99 kernel: pcieport
0000:00:03.0: PCIe Bus Error: severity=Corrected, type=Data Link Layer, 
id=0018(Receiver ID) Nov 15 15:49:52 x99 kernel: pcieport 0000:00:03.0: 
device [8086:6f08] error status/mask=00000040/00002000 Nov 15 15:49:52 
x99 kernel: pcieport 0000:00:03.0: [ 6] Bad TLP

Spowoduje to pogorszenie wydajności, nawet jeśli (jak dotąd) zostało poprawione. Oczywiście ten problem musi zostać rozwiązany. Nie mogę jednak znaleźć dużo na ten temat w Internecie. (Może szukam w niewłaściwych miejscach.) Znalazłem tylko kilka linków, które opublikuję poniżej.

Czy ktoś wie więcej o tych błędach?

Czy jest to płyta główna, Samsung 950 Pro, czy GPU (lub ich kombinacja)?

Sprzęt to: Asus X99 Deluxe II Samsung 950 Pro NVMe w M2. slot na mb (który dzieli port PCIe 3). Nic innego nie jest podłączone do portu PCIe 3. GeForce GTX 1070 w gnieździe PCIe 1 Core i7 6850K CPU

Kilka linków, które znalazłem, wspomina ten sam sprzęt (X99 Deluxe II mb i Samsung950 Pro). Używam Arch Linux.

Nie znalazłem ciągu „8086: 6f08” ​​w dzienniku ani nigdzie indziej, o którym dotąd szukałem.

dziwny komunikat o błędzie z nvme ssd (Bad TLP): linuxquestions https://www.reddit.com/r/linuxquestions/comments/4walnu/odd_error_message_with_nvme_ssd_bad_tlp/

PCIe: Czy twoja karta po cichu walczy z retransmitami TLP? http://billauer.co.il/blog/2011/07/pcie-tlp-dllp-retransmit-data-link-layer-error/

GTX 1080 Zgłaszanie błędnych błędów magistrali PCIe PCIP - Fora GeForce https://forums.geforce.com/default/topic/957456/gtx-1080-throwing-bad-tlp-pcie-bus-errors/

sterowniki - błąd PCIe w dzienniku dmesg - Zapytaj Ubuntu /ubuntu/643952/pcie-error-in-dmesg-log

Twarda blokada 780Ti X99 - błędy PCIE - Fora programistów NVIDIA https://devtalk.nvidia.com/default/topic/779994/linux/780ti-x99-hard-lock-pcie-errors/


przeniosłem mój GTX 710 z gniazda Pcie X16 do gniazda X1 (Asus Prime B450-Plus, Ryzen 5 3600, Samsung NVM 970)
Trants

Odpowiedzi:


23

Mogę podać co najmniej kilka szczegółów, mimo że nie potrafię w pełni wyjaśnić, co się stanie.

Jak opisano na przykład tutaj , CPU komunikuje się z kontrolerem magistrali PCIe przez pakiety warstwy transakcji (TLP). Sprzęt wykrywa, kiedy są wadliwe, a jądro Linuksa zgłasza to jako wiadomości.

Opcja jądra pci=nommconfwyłącza przestrzeń konfiguracji PCI zmapowaną w pamięci, która jest dostępna w systemie Linux od jądra 2.6. Z grubsza, wszystkie urządzenia PCI mają obszar opisujący to urządzenie (co widać lspci -vv), a pierwotna metoda dostępu do tego obszaru wymaga przejścia przez porty I / O, podczas gdy PCIe pozwala na mapowanie tego miejsca do pamięci w celu łatwiejszego dostępu.

Oznacza to, że w tym konkretnym przypadku coś idzie nie tak, gdy kontroler PCIe korzysta z tej metody w celu uzyskania dostępu do przestrzeni konfiguracyjnej określonego urządzenia. Może to być błąd sprzętowy w urządzeniu, w kontrolerze głównym PCIe na płycie głównej, w specyficznej interakcji tych dwóch lub coś innego.

Korzystając z niego pci=nommconf, przestrzeń konfiguracyjna wszystkich urządzeń będzie dostępna w oryginalny sposób, a zmiana metod dostępu obejdzie ten problem. Więc jeśli chcesz, rozwiązuje to i tłumi.


Czy mogę wiedzieć, czy to mój problem z płytą główną? Lub problem z moim procesorem. Czy powinienem je zmienić?
user10024395

@ user2675516: To nie jest związane z procesorem. Jest to problem kontrolera głównego PCIe (który często znajduje się w mostku południowym) i / lub kontrolera PCIe urządzenia lub ich interakcji. Tak, zmiana płyty głównej na inną z innym sprzętem zwykle się go pozbywa.
reż

Zmieniłem z asus e-ws na asus deluxe, ale problem nadal występuje. Dlatego podejrzewam, że jest to procesor. A może dlatego, że oba są chipsetem X99?
user10024395

1
@ user2675516: Jeśli chipset jest taki sam, szczególnie. kontroler PCIe, a następnie zmiana płyty głównej oczywiście nie pomoże. Dlatego napisałem „płyta główna z innym sprzętem ”.
reż

wspólnym czynnikiem wydaje mi się płyta główna z mikroukładem X99
MountainX dla Moniki Cellio

3

Dodanie opcji wiersza polecenia jądra pci=nommconfrozwiązało problem. Dlatego zakładam, że problem dotyczy płyty głównej. Zdarza się to na wszystkich moich komputerach wyposażonych w płytę główną X99. Nie dzieje się tak w systemach Z170 ani na żadnym innym sprzęcie, który posiadam.


1
Cześć, Mam również ten problem. Czy mogę wiedzieć, co robi pci-nommconf? Czy to tylko pomija problem, czy rozwiązuje problem?
user10024395

Nie mogę potwierdzić - otrzymuję błąd na Z170i, uruchomiony Arch 4.13.12
Sitilge

@sitilge - dziękuję za komentarz. Która marka / model Z170i? Moje płyty główne to Asus. Jednym z nich jest X99 Deluxe II
MountainX dla Moniki Cellio

To jest asus z170i pro gaming.
sitilge

3

Spróbuj wykonać następujące czynności:

  1. cp /etc/default/grub ~/Desktop
  2. Edytuj grub. Dodaj pci=noaerna końcu GRUB_CMDLINE_LINUX_DEFAULT. Linia będzie taka:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pci=noaer"
    
  3. sudo cp ~/Desktop/grub /etc/default/

  4. sudo update-grub
  5. Zrestartuj teraz

Zastosowałem twoje rozwiązanie, ale zamiast tego pci=noaerużyłem pci=nommconfzgodnie z sugestią @dirkt
user3405291

Dzięki, pci = noaer naprawił mój problem z Slackware 14.2x64 zainstalowany na laptopie HP (instalacja na komputerze w ogóle nie wykazywała tego problemu)
John Forkosh

7
Czy mógłbyś trochę rozwinąć? Co robi ta opcja i jak możesz rozwiązać problem?
Calimo,

Dlaczego po prostu nie używałbyś sudoeditdo bezpiecznej edycji? -1 dla tych kopii tu i tam są kompletne bzdury
LinuxSecurityFreak

4
pci=noaerpo prostu wyłącza Zaawansowane raportowanie błędów. Więc nadal masz te błędy, po prostu ich nie widzisz ...
dirkt

2

Otrzymuję te same błędy (Zła TLP skojarzona z urządzeniem 8086: 6f08). Mam X99 Deluxe II, Samsung 960 pro, Nvidia 1080 ti. Problemy te wydają się być związane z mikroukładem X99 i urządzeniem M.2, takim jak Samsung Pro.

Płyta główna X99 Deluxe II dzieli szerokość pasma między gniazdem PCIE16_3 a M.2 / U.2. Po komentarzu @Nic w BIOSie zmieniłem konfigurację urządzeń pokładowych | U.2_2 Przepustowość od Auto do U.2_2. To rozwiązało problem.


Jak ustaliłeś, że to tylko ten chipset? Próbowałeś co drugi chipset? Występuje na wielu różnych urządzeniach.
doug65536

2

Zmieniłem konfigurację gniazda PCIE16_3 w Biosie na moim x99-E, aby być statycznym ustawionym na tryb x8 zamiast auto, który jest domyślny dla obsługi urządzeń M.2. Działa teraz dobrze bez błędów TLP na obu moich kartach 1070GTX podłączonych przez karty rozszerzeń PCIe 1x do 16x.

Najpierw nie użyłem portu 16_3, przeniosłem się do tego gniazda, aby przetestować, ale nadal miałem problemy przed zmianą bios. Zmieniono również ustawienie snu dla wszystkich kart na 30 w konfiguracji górnika.

Przed zmianą miałem dziennik jądra spamowany błędami. Próbowałem także uruchomić system przed i po zmianie. Wydaje się być dość wytrwały.


2

Wyszukaj w instrukcji płyty głównej „AER”. Możesz zabić źródło problemu, poprawiając konkretną niezgodność lub całkowicie wyłączając AER. Używaj tego tylko wtedy, gdy cały spam spam dotyczy poprawionych błędów, w przeciwnym razie możesz ukryć rzeczywisty problem.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.