Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Andrey Melnikoff                     2:5020/400     16 Aug 2005  22:00:06
 To : Slava Astashonok
 Subject : Re: samba уже подзадолбала
 -------------------------------------------------------------------------------- 
 
 Slava Astashonok <sla@0n.ru> wrote:
 
  SA> Andrey Melnikoff wrote:
 
 >>  SA> 1. Что это за реентер такой, откуда он может взяться в нетредовом
 >>  SA> приложении? И я сильно сомневаюсь в том, что это обработчик какого-то
 >>  SA> сигнала вызывает функцию из libldap_r.
 >>  Автор библиотеки занет про то, что она реентрабельна. И может дергать сам
 >> себя. 
 
  SA> Автор библиотеки специально обвязал её мутекс-обёртками чтобы добиться
  SA> нереентрантности? ;) Кстати, суфикс "_r" в названии библиотеки традиционно
  SA> означает её реентрантность.
 
 Реентрабельность может достигаться за счет мутексов или без их
 использования. Тем более, что линковка (даже динамическая) с libpthread у
 софтины которая никогда ничего про треды незнала - может вызывать изощренные
 глюки на ровном месте. 
 
 >>  SA> 2. Даже если это дидлок, то при чём тут select()?
 >>  А ты уверен, что gdb не врёт? 
 
 SA> Скажем так, у меня нет оснований ему не верить. Тем более, что по я
 SA> диагонали ознакомился с текстом nss-ldap и libldap и по логике мельтешений
 SA> select() -> процесс -> select() там быть не должно.
 
 кто сказал что select() -> чтото -> select()? 
 
 >>>>EIP; c012073d <release_task+1fd/230>   <=====
 >> 
 >> 
 >> Trace; c012073d <release_task+1fd/230>
 >> Trace; c0106582 <sys_rt_sigsuspend+122/160>
 >> Trace; c0107717 <system_call+33/38>
 >> Proc;  sendmail
 >> 
 >> Hайди здесь, где задача находилась в момент снятия трейса?
 SA> Блин, так есть там дидлок или нет? Какой может быть трейс у 
 SA> дидлоченного процесса?
 
 Любой. Я проше еще раз - покажите, где находился этот процесс в момент
 снятия трейса.
 
 >> # sleep 10 & ps -C "sleep 10" l
 >> [1] 1163
 >> F   UID   PID  PPID PRI  NI    VSZ   RSS WCHAN  STAT TTY        TIME COMMAND
 >> 0     0  1163   741  14   0   3376   568 nanosl S    pts/4      0:00 sleep 10
 >> 
 >> У тебя System.map в /boot/ наличиствует?
 
  SA> Разумеется. Кое-где wchan в выводе ps присутствует, но не везде:
  SA> 5  1001 32175 32173  15   0  6160 1988 -      S    ?          0:00 sshd:
  SA> sla@ 0  1001 32176 32175  16   0  3200 2016 wait4  Ss   pts/1      0:01
  SA> -bash 0  1001 32195 32176  16   0  2536  912 pause  S+   pts/1      0:00
  SA> screen -rd
 
 Hу и прекрасно. Оно не в ядре, что покажет тебе ps ?
 
 >> PS: Как опять повиснет, возми запусти "starce -p повисшый-pid -s 128 -o
 >> trace", с дркгой консоли попинвй это самый повисший-pid сигналами типа HUP,
 >> TERM, USR1. Выхлоп от starce (trace) покажи сюды.
 SA> Если он будет. Сомневаюсь, что smbd удасться вышибить из этого select()
 SA> сигналом, так как тот же SIGTERM ни в nss-ldap ни в libldap не блокируется и
 SA> альтернативный обработчик на него не ставится, как и в самом smbd, однако же
 SA> в какой-то момент он перестаёт регировать на этот сигнал. Вот
 SA> оборвать соединение с ldap-сервером можно попробовать.
 
 Вот-вот. Тебе открыть страшную тайну, что когда у тебя что-то слинкованно с
 libpthread, ld заменяе всякие signal(), sigaction() и всё остальное -
 функциями из libpthread. Функции из libpthread всегда ставят свой
 альтернативный sa_restorer (причем - принудительно, если ты захочешь поиметь
 свой sa_restorer, ты всегда будешь вторым).
 sa_restorer занимается тем, что блокирует все сигналы за исключением SIGKILL
 (его нельзя заблокировать) и SIGRTMIN (он по нему переключает нити).
 Вот тебе и ответ - почему у тебя smbd не киляется кроме как SIGKILL. 
 Посылать ему SIGRTMIN - бесполезно. 
 
 Давай выхлоп от strace.
 --- ifmail v.2.15dev5.3
  * Origin: Demos online service (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 samba уже подзадолбала   Slava Astashonok   15 Aug 2005 12:47:28 
 Re: samba уже подзадолбала   Eugene B. Berdnikov   15 Aug 2005 14:08:03 
 Re: samba уже подзадолбала   Slava Astashonok   15 Aug 2005 15:19:33 
 Re: samba уже подзадолбала   Andrey Melnikoff   15 Aug 2005 16:30:32 
 Re: samba уже подзадолбала   Slava Astashonok   15 Aug 2005 23:49:15 
 Re: samba уже подзадолбала   Andrey Melnikoff   16 Aug 2005 15:30:20 
 Re: samba уже подзадолбала   Slava Astashonok   16 Aug 2005 17:51:39 
 Re: samba уже подзадолбала   Andrey Melnikoff   16 Aug 2005 18:45:23 
 Re: samba уже подзадолбала   Slava Astashonok   16 Aug 2005 19:43:56 
 Re: samba уже подзадолбала   Andrey Melnikoff   16 Aug 2005 22:00:06 
 Re: samba уже подзадолбала   Slava Astashonok   19 Aug 2005 23:23:32 
 Re: samba уже подзадолбала   Andrey Melnikoff   22 Aug 2005 20:30:18 
 Re: samba уже подзадолбала   Slava Astashonok   23 Aug 2005 10:41:19 
 Re: samba уже подзадолбала   Eugene B. Berdnikov   16 Aug 2005 23:19:34 
 Re: samba уже подзадолбала   Slava Astashonok   19 Aug 2005 23:23:32 
 Re: samba уже подзадолбала   Eugene B. Berdnikov   20 Aug 2005 01:08:13 
 Re: samba уже подзадолбала   Slava Astashonok   20 Aug 2005 04:21:35 
 Re: samba уже подзадолбала   Eugene B. Berdnikov   21 Aug 2005 00:08:31 
 Re: samba уже подзадолбала   Slava Astashonok   22 Aug 2005 19:03:58 
 Re: samba уже подзадолбала   Eugene B. Berdnikov   22 Aug 2005 22:08:05 
 Re: samba уже подзадолбала   Eugene B. Berdnikov   16 Aug 2005 20:08:24 
 Re: samba уже подзадолбала   Eugene B. Berdnikov   15 Aug 2005 19:08:25 
 Re: samba уже подзадолбала   Slava Astashonok   15 Aug 2005 23:59:23 
 Re: samba уже подзадолбала   Eugene B. Berdnikov   16 Aug 2005 01:08:24 
 Re: samba уже подзадолбала   Slava Astashonok   16 Aug 2005 17:49:37 
 Re: samba уже подзадолбала   Ilya Anfimov   16 Aug 2005 18:12:51 
Архивное /ru.linux/643801ef1de0.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional