[asterisk-bugs] [JIRA] (ASTERISK-20550) Deadlock between SIP pvts being placed in container and CLI command 'sip show channels'

Jonathan Rose (JIRA) noreply at issues.asterisk.org
Fri Oct 26 09:46:18 CDT 2012


    [ https://issues.asterisk.org/jira/browse/ASTERISK-20550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=198925#comment-198925 ] 

Jonathan Rose commented on ASTERISK-20550:
------------------------------------------

Looks like a pvt is locked in register_verify, register_verify calls parse_register_contact which calls sip_poke_peer which calls dialog_unlink_all. Then dialog_unlink_all performs an ao2_t_unlink against dialogs which causes the locking inversion. It's kinda funny since the pvt we are working on in that function (dialog_unlink_all) seems to be a completely different pvt from the one that was locked by register_verify.

There might also be other things using the dialogs list, this is just the first one I found that seems definite.
                
> Deadlock between SIP pvts being placed in container and CLI command 'sip show channels'
> ---------------------------------------------------------------------------------------
>
>                 Key: ASTERISK-20550
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-20550
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Channels/chan_sip/General
>    Affects Versions: SVN
>            Reporter: aragon
>         Attachments: cli.txt, refcountdebug.txt, sip show channels ref count log.rar, thread apply bt.txt
>
>
> While testing for ref counting issues to debug another bug report I ran into a deadlock.
> core show locks unresponsive so I attached with gdb.
> Ref count debugging was enabled so I am attaching:
> gdb thread apply all bt
> cli before lock
> ref count file

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the asterisk-bugs mailing list