У меня есть это совершенно новое программное обеспечение RAID-1 с двумя внешними USB-накопителями WD Elements, и я вижу, что Linux довольно часто повторяет следующее сообщение:
...
[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
...
Итак, что это говорит? Это нормально? Это проблема, которую я должен попытаться решить?
Обновление
На самом деле, эти сообщения не для дисков, которые я думал, что они были. У меня есть несколько других USB-накопителей, подключенных к этому компьютеру через USB-концентратор. Во всяком случае, мой вопрос в основном, что означает это сообщение на простом английском языке?
Ответы:
Дай мне попробовать.
Буквально в сообщении говорится, что Linux USB stack выпустил «USB_RESET» для вашего конкретного устройства (устройства № 19 и № 20, какими бы они ни были). Кажется, ошибка появляется один раз в 10-30 секунд. После сброса в журнале должны появиться свежие сообщения о перечислении, поскольку при сбросе через USB подключенное устройство переходит в «состояние по умолчанию». Похоже, многословие вашего журнала очень сокращено.
Сброс USB-устройства во время работы - довольно радикальная ситуация. Контроллер прибегает к этому сбросу «порта», если он сталкивается с «ошибкой транзакции». Ошибка транзакции возникает, когда ссылка не завершает все необходимые этапы транзакции USB или имеет ошибку CRC. При обычном USB-контроллере EHCI автоматически повторяет неудачную транзакцию (обычно максимум 3 раза), а затем устанавливает прерывание XACT_ERROR. Статистически, согласно теории ошибок, если ссылка не отвечает должным образом на три попытки подряд, что-то не так с конкретным сегментом USB, в основном электрически. Таким образом, ошибка транзакции считается фатальной, и программное обеспечение пытается восстановить ссылку. Если дерево-четыре пытается восстановить связь неудачно, хост считает этот порт мертвым и завершает работу.
Однако в Linux кто-то решил, что трех теоретических попыток недостаточно, и программное обеспечение Linux выполняет дополнительно 32 (тридцать две) попытки, что в сумме составляет 96 (!!!). Если аппаратное соединение оказывается электрически маргинальным, 96 попыток могут быть успешными в 99,99% случаев. Гуру программного обеспечения Linux утверждают, что это помогает улучшить работоспособность сомнительных устройств / кабелей. По сути, этот метод скрывает серьезную проблему с этим конкретным USB-соединением, которое не помогает пользователям в долгосрочной перспективе.
Проблема может заключаться в подаче предельного напряжения (VBUS) на накопители, глюках VBUS или ухудшении сигнала на сигнальных проводах. Сначала я бы попробовал очень короткие высококачественные сертифицированные кабели и проверил бы, изменяется ли статистика ошибок.
источник
ehci_hcd
модулем? Или это возможноohci_hcd
для конкретного устройства (например/dev/sda
, обрабатываетсяehci_hcd
и "проблематично"/dev/sdb
обрабатываетсяohci_hcd
)?Эта ошибка описана в статье Linux: сброс высокоскоростного USB-устройства с помощью ehci_hcd Ошибка и решение :
Если вы не хотите заменять материнскую плату, удалите драйвер ehci_hcd, отредактируйте файл
/etc/modprobe.d/blacklist.conf
и добавьте строку:Наконец, используйте скрипт mkinitrd для создания структуры каталогов, которая может служить корневой файловой системой initrd без ehci_hcd:
Перезагрузитесь как тест.
Статья с похожими инструкциями: Почему ошибка «kernel: usb 1-2.2: сбросить высокоскоростное USB-устройство с помощью ehci_hcd и адреса 6» записана в файле / var / log / messages?
источник