Есть телефон Nokia 6233. При подключении его к компьютеру через кабель USB пожет повиснуть система. Поиск причины привёл к следующему: 1) Для работы телефона нужен модуль как минимум cdc-acm, возможно и cdc-ether. 2) система вешается из-за того, что при подключении телефона hotplug грузит модули cdc-ether и cdc-acm в случайном порядке. Если сначала загрузится cdc-acm, а потом cdc-ether, то проблем нет. Если сначала cdc-ether, а потом cdc-acm, сразу после загрузки вылетает сообщение об обрушении модуля cdc-ether, далее система становится нестабильной и в любой последующий момент вешается так (обычно при загрузке программ, особенно X), что для выключения приходится жать reset или снимать питаение компьютера. 3) Получается, что модуль cdc-ether для своей работы требует что-то от cdc-acm. Возможное решение: в модуль cdc-ether жёстко прописать зависимость от cdc-acm. У меня именно это ядро, возможно, такое есть и на других ядрах. Немного касается этого ошибка #5841. Steps to Reproduce: 1. Загрузить модуль cdc-ether 2. ПОдключить телефон 2. Загрузить X Actual Results: Система вешается намертво. Expected Results: Нормальная работа
(In reply to comment #0) > сразу после загрузки вылетает сообщение об обрушении модуля cdc-ether Можно увидеть это сообщение? Лучше, конечно, сохранить полный вывод dmesg, но пойдёт и то, что записалось в логи. Кроме того, представляет интерес вывод lsusb -v после подключения телефона. > 3) Получается, что модуль cdc-ether для своей работы требует что-то от cdc-acm. На самом деле это совершенно независимые драйверы, предназначенные для разных устройств. Возможно, этот телефон выглядит на шине USB как-то странно (впервые слышу, чтобы для телефона загружался модуль cdc-ether). > Немного касается этого ошибка #5841. Это несколько другая ситуация - там падал именно модуль cdc-acm, без всякого cdc-ether, причём это проявлялось только на устройствах, обладающих некоторыми особенностями. В любом случае та ошибка вроде бы уже давно исправлена. В качестве временного обхода проблемы можно вписать cdc-ether в /etc/hotplug/blacklist, чтобы этот модуль не загружался автоматически.
Created attachment 1627 [details] Error log when loading cdc-ether Так, попытка номер 2. Сейчас, похоже, выяснилось, что падает модуль cdc-ether без какого-либо влияния со стороны cdc-acm. Сейчас утащил cdc-ether.ko прочь, подключил телефон и нормально вышел в инет. В аттаче прикладываю два куска лога падений, которые удалось найти. Как бы его заблокировать со стороны hotplug? Что-то не могу. Занёс в blacklist, но не помогает. Возможно, падение из-за другого модуля, rndis_host, который дополнительно тащит cdc-ether.
Created attachment 1628 [details] Вывод lsusb -v Похоже, я погорячился насчёт cdc-acm. Он, скорее всего, невиновен. Главное начинается отсюда: Bus 002 Device 005: ID 0421:0491 Nokia Mobile Phones
Created attachment 1629 [details] Вывод lsmod В данном аттачменте приведён вывод lsmod БЕЗ загрузки модуля cdc-ether и rndis-host со всеми другими: Sep 13 22:57:41 mobile-epiphanov insmod: insmod: /lib/modules/2.6.16-wks26-smp-alt8/kernel/drivers/usb/net/cdc_ether.ko: No such file or directory Sep 13 22:57:41 mobile-epiphanov insmod: insmod: insmod rndis_host failed Sep 13 22:57:41 mobile-epiphanov usb.agent[10936]: ... can't load module rndis_host Sep 13 22:57:41 mobile-epiphanov usb.agent[10936]: missing kernel or user mode driver rndis_host
(In reply to comment #2) > Возможно, падение из-за другого модуля, rndis_host, который дополнительно тащит cdc-ether. Да, похоже на это - у этого телефона есть интерфейс 02/02/ff, который как раз соответствует модулю rndis_host. Получается, что в blacklist надо заносить не cdc-ether, а rndis_host.
Похоже, rndis_host остался сломан даже в 2.6.18: http://bugzilla.kernel.org/show_bug.cgi?id=7201
(In reply to comment #6) > Похоже, rndis_host остался сломан даже в 2.6.18: > http://bugzilla.kernel.org/show_bug.cgi?id=7201 Да, я тоже столкнулся на 2.6.18-std-smp-alt4. Может, вот это как-то поможет тому, кто в этом больше меня понимает: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=228231
В kernel-image-std-{smp,pae}-2.6.18-alt5 эта проблема должна быть исправлена; когда исправление доберётся до ядра wks - не знаю.
Automagically fixed due wks RIP in Sisyphus.
"due to" :) (и IMHO тогда WORKSFORME)