|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Eugene Grosbein 2:5006/1 16 Sep 2004 00:27:03 To : Gleb Smirnoff Subject : Re: легкий PPPoE --------------------------------------------------------------------------------
15 сен 2004, среда, в 16:15 KRAST, Gleb Smirnoff написал(а):
EG>> Судя по всему, mpd "зависает" на каком-то select(),
EG>> если у него есть консоль, то нажатие Enter пробуждает этот select(),
EG>> после чего mpd выгребает пришедшие пакеты и проводит negotiation
EG>> чуть дальше, потом снова впадает в ступор. Из ступора его выводит
EG>> alarm, если был, тогда mpd уже ничего не проверяет и обламывается по
EG>> таймауту. Между прочим, сразу после этого он выгребает пришедшие
GS> LCP-пакеты,
EG>> но состояение уже DOWN, так что он их игнорирует.
EG>> А если аларма не было установлено, на select'е mpd может висеть вечно -
EG>> такое я тоже наблюдаю.
GS> Евгений, это просто нужно перевести на english и написать в mpd-users@.
Hе совсем так просто :-)
Следуя заветам пар^H^H^H Handbook, сначала нужно обновить OS
как минимум до последнего релиза используемой основной ветки.
Если не помогло, конкретно в нашем случае select() в коде ровно один
(ktrace показывает "зависание" именно на select), так что если нужно
решение как можно быстрее (мой случай), то неплохо бы почитать код,
немного подумать и может быть немного поотлаживать, чтобы писать уже
более конкретно. С mpd есть еще вариант - попробовать версию 4.0b2,
в Changelog которой упоминается пофикшенный deadlock. Вот потом уже
можно и писать.
К счастью, Hanbook таки не зря настоятельно советует в первую очередь
обновить систему. В моем случае этого оказалось достаточно.
Eugene
--
"Люди забыли эту истину," - сказал Лис, - "но ты не забывай"
--- slrn/0.9.8.0 (FreeBSD)
* Origin: Svyaz Service JSC (2:5006/1@fidonet)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/260930a6bfb3e.html, оценка из 5, голосов 10
|