J'ai ce tout nouveau logiciel RAID-1 construit avec deux lecteurs USB externes WD Elements, et je peux voir que Linux répète un peu le message suivant:
...
[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
...
Alors, qu'est-ce que ça dit? Est-ce normal? Est-ce un problème que je devrais essayer de résoudre?
Mise à jour
En fait, ces messages ne sont pas destinés aux lecteurs que je pensais être. J'ai également un tas d'autres lecteurs USB connectés à cet ordinateur via un concentrateur USB. Quoi qu'il en soit, ma question est essentiellement ce que signifie ce message en anglais simple?
Réponses:
Laisse-moi essayer.
Littéralement, le message dit que la pile USB Linux a émis "USB_RESET" sur votre appareil particulier (appareils # 19 et # 20, quels qu'ils soient). L'erreur semble se produire une fois toutes les 10 à 30 secondes. Après la réinitialisation, le journal devrait avoir de nouveaux messages d'énumération, car la réinitialisation USB forcera l'appareil connecté à "l'état par défaut". On dirait que la verbosité de votre journal est très réduite.
La réinitialisation d'un périphérique USB en cours de fonctionnement est une situation assez dramatique. Le contrôleur recourt à cette réinitialisation de "port" s'il rencontre une "erreur de transaction". Une erreur de transaction se produit lorsque le lien ne termine pas toutes les phases requises de la transaction USB ou a une erreur CRC. En USB normal, le contrôleur EHCI réessayera automatiquement la transaction ayant échoué (maximum 3 fois typique), puis définira une interruption XACT_ERROR. Statistiquement, selon la théorie des erreurs, si un lien ne répond pas correctement à trois tentatives consécutives, il y a un problème avec le segment USB particulier, principalement électrique. L'erreur de transaction est donc considérée comme fatale et le logiciel essaie de récupérer le lien. Si l'arborescence quatre tente de récupérer le lien échoue, l'hôte considère ce port comme mort et se ferme.
Sous Linux cependant, quelqu'un a décidé que 3 tentatives théoriques ne suffisaient pas, et le logiciel Linux effectue 32 (trente-deux) tentatives supplémentaires, ce qui en fait 96 (!!!) au total. Si la liaison matérielle s'avère être électriquement marginale, les 96 tentatives pourraient réussir en 99,99% du temps. Les gourous des logiciels Linux affirment que cela aide à améliorer l'opérabilité des périphériques / câbles douteux. En substance, cette technique cache un problème sérieux avec cette connexion USB particulière, qui n'aide pas les utilisateurs à long terme.
Le problème peut provenir de l'alimentation en tension marginale (VBUS) des variateurs, des problèmes de VBUS ou de la dégradation du signal sur les fils de signal. Je voudrais d'abord essayer des câbles certifiés de haute qualité extrêmement courts et vérifier si les statistiques d'erreur changent.
la source
ehci_hcd
module? Ou est-il possible de forcerohci_hcd
pour un dispositif particulier (par exemple/dev/sda
est géré parehci_hcd
et "problématique"/dev/sdb
est géré parohci_hcd
)?Cette erreur est décrite dans l'article Linux: réinitialiser le périphérique USB haute vitesse à l'aide de l'erreur et de la solution ehci_hcd :
Si vous ne souhaitez pas remplacer la carte mère, pour supprimer le pilote ehci_hcd éditez le fichier
/etc/modprobe.d/blacklist.conf
et ajoutez la ligne:Enfin, utilisez le script mkinitrd pour construire une structure de répertoires pouvant servir de système de fichiers racine initrd sans ehci_hcd:
Redémarrez en tant que test.
Un article avec des instructions similaires est: Pourquoi l'erreur "kernel: usb 1-2.2: reset high speed USB device using ehci_hcd and address 6" est-elle écrite dans le fichier / var / log / messages?
la source