Summary:ASTERISK-11932: deadlock using hardware transcoding card
Reporter:Francesco Castellano (fcastellano)Labels:
Date Opened:2008-04-28 09:32:20Date Closed:2008-04-28 11:25:05
Versions:Frequency of
Environment:Attachments:( 0) lima-2008-04-25_12-22-locks_and_threads.txt
Description:At a random pace (once or twice per day on the average), two asterisks of ours seems caught in a deadlock. The CLI stop working on some command ("core show channels" for example, while "sip show channels" keeps working well). Moreover, asterisk stop responding on the SIP UDP port, and I cannot restart asterisk, having to reboot the machine.

Sometimes on one of the two, the kernel completely hangs, and a manual reset must be performed.


We are using asterisk 1.4.19, but versions 1.4.18 and 1.4.17 similarly behaved. At the moment we are using zaptel 1.4.10 (and we tried also 1.4.9 and 1.4.8). Moreover having switched off in the last 4 days the hardware transcoding, no deadlocks occurred.

Having compiled Asterisk with DEBUG_THREADS and DEBUG_LOCKS, I can attach the output of "core show threads" and "core show locks" at the moment of the deadlock.

I don't know if it is useful, but during normal times, in /var/log/asterisk/messages there are thousands of warnings like these:

no samples for lintoulaw
zapg729toalaw did not update ...

We are using a reasonably updated Debian Etch (debian kernel 2.6.18), with a digium card TE420 as interface on the ISDN-PRI. The servers are used mainly as SIP to ISDN (EuroISDN) gateways.
Comments:By: Francesco Castellano (fcastellano) 2008-04-28 09:43:19

Sorry, I didn't mentioned it, but we are using as transcoding card the digium TC400B, either in g729 mode, or in mixed mode.

Also the deadlocks seems not related to the server call loads, notwithstanding having a soft preference over peak hours. Anyway at peak we have 60/90 channels, whose only less than a half are effectively transcoded with the card.

By: Shaun Ruffell (sruffell) 2008-04-28 11:25:05

fcastellano, please contact Digium technical support for help resolving this issue.