pjsip version 1.1 gotcha with work around.

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

 



Sequence seen in the log file:

clock thread in conference.c get_frame() locks the conf mutex

pjsua thread in pjsua_call.c pjsua_call_on_media_update() locks pjsua mutex

clock thread hits playback EOF condition and user EOF function is called.

If user EOF function calls something like pjsua_player_destroy() then 
clock thread tries to acquire psjua mutex.
But the pjsua thread has that.  Resulting in deadlock for the pjsua 
thread and the clock thread.

Workaround solution: Don't call pjsua_player_destroy() or anything 
blocking on pjsua mutex from EOF function.
Simply signal the application thread from the EOF function...yea EOF 
has happened and let it do the
pjsua_player_destroy().

David Clark
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20090511/c4d8e838/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