[asterisk-dev] Asterisk lock-ups tracking w/o DEBUG_THREADS
Kirill Katsnelson
kkm at adaptiveai.com
Mon Apr 18 22:44:16 CDT 2011
We have been experiencing lock-ups that Russel identified as happening
in timerfd code. A thread waiting on timer stalled with channel lock
held, and everything else chain-locked on it. He suggested going dahdi
timing, so I did. We do not have any dahdi hardware (SIP only).
Now as load has increased on that machine we also getting freezes. I got
2 core dumps by killing the locked process, but do not have lock traces,
as the asterisk was compiled without DEBUG_THREADS (DONT_OPTIMIZE is
still enabled).
Question 1: how useful is the core dump of a locked asterisk without the
lock info? I am looking at the cores but they do not seem very
informative to me. Should I add them to the open issue, or is that
useless? To be clear, I am not even sure if the new freezes are related.
Question 2 is trickier. When compiled with DEBUG_THREADS, previously I
had Asterisk peaking at about 90% CPU on that hardware with "old" load.
Now with increased load I am afraid CPU will not hold if I enable the
option. Are there any hacks that would get enough of a trace but without
the full overhead of DEBUG_THREADS?
-kkm
More information about the asterisk-dev
mailing list