Ich habe diese brandneue RAID-1-Software mit zwei externen WD Elements-USB-Laufwerken erstellt und sehe, dass Linux die folgende Meldung ziemlich oft wiederholt:
...
[302148.036912] usb 1-3.1: reset high-speed USB device number 19 using ehci_hcd
[302153.052029] usb 1-3.3: reset high-speed USB device number 20 using ehci_hcd
[302186.031481] usb 1-3.3: reset high-speed USB device number 20 using ehci_hcd
[302217.050210] usb 1-3.3: reset high-speed USB device number 20 using ehci_hcd
[302281.043543] usb 1-3.3: reset high-speed USB device number 20 using ehci_hcd
[302312.090158] usb 1-3.3: reset high-speed USB device number 20 using ehci_hcd
[302351.076851] usb 1-3.1: reset high-speed USB device number 19 using ehci_hcd
...
Also, was steht da? Ist das normal? Ist das ein Problem, das ich zu beheben versuchen sollte?
Update
Tatsächlich sind diese Meldungen nicht für die Laufwerke bestimmt, von denen ich dachte, dass sie es sind. Ich habe auch eine Reihe anderer USB-Laufwerke über einen USB-Hub an diesen Computer angeschlossen. Wie auch immer, meine Frage ist im Grunde, was bedeutet diese Nachricht im Klartext?
Antworten:
Lass es mich versuchen.
Die Meldung besagt wörtlich, dass der Linux-USB-Stack "USB_RESET" für Ihr bestimmtes Gerät ausgegeben hat (Geräte Nr. 19 und Nr. 20, unabhängig davon, um was es sich handelt). Der Fehler scheint einmal alle 10-30 Sekunden aufzutreten. Nach dem Zurücksetzen sollte das Protokoll neue Aufzählungsmeldungen enthalten, da durch das Zurücksetzen über USB das angeschlossene Gerät in den "Standardzustand" versetzt wird. Es sieht so aus, als ob die Ausführlichkeit Ihres Protokolls sehr reduziert ist.
Das Zurücksetzen eines USB-Geräts mitten im Betrieb ist eine ziemlich drastische Situation. Der Controller greift auf diesen "Port" -Reset zurück, wenn er auf "Transaktionsfehler" stößt. Ein Transaktionsfehler tritt auf, wenn die Verbindung nicht alle erforderlichen Phasen der USB-Transaktion abschließt oder wenn ein CRC-Fehler vorliegt. Bei normalem USB wiederholt der EHCI-Controller die fehlgeschlagene Transaktion automatisch (normalerweise maximal dreimal) und setzt dann einen XACT_ERROR-Interrupt. Statistisch gesehen ist nach der Fehlertheorie, wenn ein Link auf drei Versuche in Folge nicht richtig reagiert, mit dem bestimmten USB-Segment etwas nicht in Ordnung, meistens elektrisch. Der Transaktionsfehler wird als schwerwiegend eingestuft, und die Software versucht, die Verknüpfung wiederherzustellen. Wenn vier Versuche, die Verbindung wiederherzustellen, fehlschlagen, betrachtet der Host diesen Port als tot und beendet ihn.
Unter Linux hat jedoch jemand entschieden, dass drei theoretische Versuche nicht ausreichen, und die Linux-Software führt zusätzliche 32 (zweiunddreißig) Versuche durch, sodass es insgesamt 96 (!!!) sind. Wenn die Hardwareverbindung elektrisch marginal ist, können die 96 Versuche in 99,99% der Fälle erfolgreich sein. Linux-Software-Gurus behaupten, dass dies dazu beiträgt, die Bedienbarkeit fragwürdiger Geräte / Kabel zu verbessern. Im Wesentlichen verbirgt diese Technik ein ernstes Problem mit dieser bestimmten USB-Verbindung, das Benutzern auf lange Sicht nicht hilft.
Das Problem kann in der Grenzspannungsversorgung (VBUS) der Laufwerke oder in VBUS-Störungen oder in einer Signalverschlechterung der Signalleitungen liegen. Ich würde zuerst extrem kurze, hochqualitative, zertifizierte Kabel ausprobieren und prüfen, ob sich die Fehlerstatistik ändert.
quelle
ehci_hcd
Modul zu erhöhen ? Oder ist es möglich,ohci_hcd
für ein bestimmtes Gerät zu erzwingen (z. B./dev/sda
wird von gehandhabtehci_hcd
und "problematisch"/dev/sdb
wird von gehandhabtohci_hcd
)?Dieser Fehler wird im Artikel Linux: Zurücksetzen eines Hochgeschwindigkeits-USB-Geräts mit ehci_hcd beschrieben. Fehler und Lösung :
Wenn Sie das Motherboard nicht ersetzen möchten, bearbeiten Sie die Datei
/etc/modprobe.d/blacklist.conf
und fügen Sie die Zeile hinzu , um den ehci_hcd-Treiber zu entfernen :Verwenden Sie schließlich das Skript mkinitrd, um eine Verzeichnisstruktur zu erstellen, die als initrd-Root-Dateisystem ohne ehci_hcd dienen kann:
Als Test neu starten.
Ein Artikel mit ähnlichen Anweisungen lautet: Warum wird der Fehler "Kernel: USB 1-2.2: Hochgeschwindigkeits-USB-Gerät mit ehci_hcd und Adresse 6 zurücksetzen" in die Datei / var / log / messages geschrieben?
quelle