![]() |
|
|
|
|
#1 |
|
Senior Member
Регистрация: 04.01.2013
Адрес: Москва
Сообщений: 461
Вес репутации: 1153 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
А если без USBхаба - эффекты остаются?
|
|
|
|
|
|
#2 |
|
Junior Member
Регистрация: 27.11.2013
Адрес: Москва
Возраст: 46
Сообщений: 12
Вес репутации: 0 ![]() |
Хабу отцепить непросто, он у меня впаян по самое не балуйся. Пробовал вытаскивать из него USB-флешку - никакой разницы. Глюк возникает непосредственно на этапе создания ttyUSB устройств модема. Смешно, что ядро весело рапортует "GSM modem ... now attached to ttyUSBx" и после этого в /dev устройства напрочь отсутствуют.
killall hotplug2 вызывает, собственно, их прибитие, но остаются висеть три hotplug-call (один так и грузит систему). После этого в системе появляются первые два из трёх портов модема. kill <PID грузящего систему hotplug-call> прибивает его, а все остальные самовыпиливаются, остаётся один первый ждущий hotplug2. Все порты модема после этого появляются в системе. Я делаю вывод, что косячит сам hotplug. Что вызывает залипание hotplug-call на последнем из трёх портов не ясно. Драйвер портов тоже получается не при чём, т.к. у людей процесс hotplug-call block залипал на чём угодно вплоть до создания свопа. Что с этим делать, хрен его знает. Update: Ха, /bin/sh /sbin/hotplug-call block это же скрипт, допёрло до меня! Обвешиваем его выдачей диагностики в лог и видим, что останавливается оно на вложенном вызове /etc/hotplug.d/block/10-swap! Проблема, в том, что процесс жрущий процессор это нифига не сам hotplug-call. С таким PID он не вызывался, если моему логу верить. А номер больше последнего вызванного hotplug-call'а. Подозреваю, что это уже 10-swap что-то дёргает неудачно. Буду теперь его ковырять. Последний раз редактировалось DmitryVS; 23.12.2013 в 22:21. |
|
|
|
|
|
#3 |
|
Junior Member
Регистрация: 27.11.2013
Адрес: Москва
Возраст: 46
Сообщений: 12
Вес репутации: 0 ![]() |
В общем, я устал наблюдать спонтанные глюки hotplug2 зависящие от фазы луны и от количества строчек для записи диагностики в лог, которые я добавлял в его скрипты в разных местах. То ли там гонка устраивается, то ли просто руки из задницы у авторов (что первого не исключает), суть одна: стабильно это не работает. Видимо, разбираться со старыми глюками разработчикам не охота, поэтому они просто выкинули hotplug2 из системы и заменили его другим механизмом. Я пошёл по пути наименьшего сопротивления и тоже его выкинул, т.е. перешёл с релиза на транк. Проблема решена.
Вывод: Если у вас странно (иногда или постоянно) ведёт себя hotplug2, в системе возникает две его копии, да ещё дочерний процесс загружает систему на 100%, то проще всего полностью от него избавиться. Переходите со своей сборки на транк. Если вам повезёт и не напоретесь на другой косяк, то проблема будет решена. У меня сейчас собран r39180. Пока сбоев не обнаружено. |
|
|
|
![]() |
| Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|