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

Matt Jordan (JIRA) noreply at issues.asterisk.org
Thu Oct 11 08:51:27 CDT 2012


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

Matt Jordan commented on ASTERISK-20550:
----------------------------------------

This ends up being a locking inversion between the sip_pvt and the dialogs container.  When handling {{parse_register_contact}}, the sip_pvt is already locked, and a new sip_pvt is created, locking the dialogs container.  When the CLI command is executed, the container is locked first; then each sip_pvt is locked.

The backtrace shows this for sip_pvt {{0x2aaad8532618}}; dialog container {{0x558a3c8}}.

> 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
>    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.
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the asterisk-bugs mailing list