deadlock while calling pjsua_call_hangup()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



---------- Forwarded message ----------
From: Durmu? Ali ?zt?rk <ali.stgt@xxxxxxxxx>
Date: 2010/6/29
Subject: deadlock while calling pjsua_call_hangup()
To: pjsip-owner at lists.pjsip.org


Hello,

we are running into deadlock and unfortunately we could not find a
workaraound for this.

-->> pjsua_call.c  Timed-out trying to acquire PJSUA mutex (possibly system
has deadlocked) in pjsua_call_hangup()

PJSIP (Version 1.4.5) is integrated in our application as same as done in
the SIPEK project.

For each call, a player is created and a wav file is streaming until the EOF
is notified. If the EOF incomes, the call is released by our application by
calling the pjsua_call_hangup() function.

After 30-40 calls (10 lines parallel) has been executed, in some cases more
than 40, PJSIP has frozen the whole system.

Is there a solution for this problem?


In the PJSIP documentation, there is an issue about performance by using
pjsua_lib.

Performance is not a matter for us. We want to call 300-500 phone number per
day. The use of pjsua_lib should be enough for our case. Is this correct?

We have also investigated, that if the callee is ending the call before the
player has reached EOF, the player is not destroyed automatically. If we try
to call the pjsua_player_destroy() function, we are running into a deadlock
too.

What are the steps to let the player destroyed before the eof is reached and
the call is ended?


Thank you in advance for your support.

Ali
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20100701/ac2d9564/attachment.html>


[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux