Hello,

there are several cases which may get to blocking of openser stop, but should kill itself after 60sec. That is a define, maybe should be moved as config parameter.

One possibility is caused by syslog -- syslog does synchronized writing, if it was writing when the kill is done will get locked by next log messages in destroy functions. It is hard to avoid it. Other possibility is from destroy functions, which try to aquire a lock set when the signal was received. Solution is to do destroy functions in non-blocking mode.

Cheers,
Daniel


On 05/04/07 02:14, Ovidiu Sas wrote:
Hi Juha,


On openser stop, the attendant process will receive the  SIGTERM and
it will dispatch the signal to it's child.  The two hanging processes
are child of a child and are not visible to the dispatcher.

Compile openser in debug mode, attach to the child with strace (strace
-p PID) and stop openser.  Check if the SIGTERM  signal is propagated
down to the two child and processes and check how the signal is
handled (and combine this information with the output of the debug
log).  Maybe this will reveal why the two processes are still hanging.


Hope this helps,
Ovidiu Sas

On 5/3/07, Juha Heinanen <[EMAIL PROTECTED]> wrote:
Ovidiu Sas writes:

> Use 'openserctl ps' to identify the processes by pid, stop openser and
 > then check which process is hanging.

the two remaining ones are:

Process::  ID=0 PID=10478 Type=attendant
Process::  ID=2 PID=10480 Type=receiver child=0 sock= 192.98.101.10:5090

and the defunc ones are hanging from the latter:

root     10478     1  0 22:25 ?        00:00:00 /usr/sbin/openser
root     10480 10478  0 22:25 ?        00:00:00  \_ /usr/sbin/openser
root 10481 10480 0 22:25 ? 00:00:00 \_ [openser] <defunct> root 10482 10480 0 22:25 ? 00:00:00 \_ [openser] <defunct>

sometimes init script stop doesn't kill any of the processes, but pid
file does get removed.

as i said, init script works flawlessly for me if i disable presence.

i know that i can play games with killall, etc., but i would rather like
to solve this problem, since i don't have any other applications either
where games are necessary (mysql, radius, etc.).

-- juha


_______________________________________________
Devel mailing list
Devel@openser.org
http://openser.org/cgi-bin/mailman/listinfo/devel


_______________________________________________
Devel mailing list
Devel@openser.org
http://openser.org/cgi-bin/mailman/listinfo/devel

Reply via email to