Upgrade 3CX to v18 and get it hosted free!

Asterisk deadlock

Author image

An Asterisk deadlock has occured when the following criteria are met:

  • You cannot place new calls or accept new calls through Asterisk
  • Existing calls can continue as long as you like, until you kill -9 the asterisk process
  • Asterisk has NOT crashed and exited
  • from the CLI you can do such commands as “show channels” with no problem
  • CLI commands like “stop now” will freeze the CLI
  • the only way to stop asterisk is to kill -9 the asterisk process

It is recommended that if your system deadlocks as described above, you try the Asterisk debugging instructions and post the output on the bugs.digium.com bug tracker.

These are only the symptoms. What is the root cause? Someone please elaborate.

A program is in deadlock when it is in a state where one or more of its components are waiting on something they will never get. I don’t now the internal structure of Asterisk but I believe it is multi-threaded. A simple example of a deadlock is if a thread A were waiting on a resource that thread B has locked, and thread B is waiting for something thread A has locked. Neither thread can continue because they are waiting on each other to relinquish a resource. Because of that neither thread ends, and asterisk cannot quit by itself. See http://en.wikipedia.org/wiki/Deadlock for more detailed info.


Related Posts:

Get 3CX - Absolutely Free!
Link up your team and customers Phone System Live Chat Video Conferencing

Hosted or Self-managed. Up to 10 users free forever. No credit card. Try risk free.

3CX
A 3CX Account with that email already exists. You will be redirected to the Customer Portal to sign in or reset your password if you've forgotten it.