[asterisk-bugs] [JIRA] (ASTERISK-24540) Presence Causes Deadlock

Matt Jordan (JIRA) noreply at issues.asterisk.org
Thu Nov 20 19:23:29 CST 2014


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

Matt Jordan edited comment on ASTERISK-24540 at 11/20/14 7:23 PM:
------------------------------------------------------------------

And again:

{noformat}
=======================================================================
=== 11.14.0
=== Currently Held Locks
=======================================================================
===
=== <pending> <lock#> (<file>): <lock type> <line num> <function> <lock name> <lock addr> (times locked)
===
=== Thread ID: 0x2b6c54c43700 (run_devstate_collector started at [  812] devicestate.c ast_enable_distributed_devstate())
=== ---> Lock #0 (astobj2.c): MUTEX 1093 internal_ao2_callback c 0x226fa00 (1)
        main/logger.c:1643 ast_bt_get_addresses() (0x50affe+1D)
        main/lock.c:218 __ast_pthread_mutex_lock() (0x503108+C9)
        main/astobj2.c:195 __ao2_lock() (0x44ca86+96)
        main/event.c:1466 event_update_cache()
        main/event.c:1505 handle_event()
        main/taskprocessor.c:332 tps_processing_function()
        main/utils.c:1192 dummy_start()
        pthread_create.c:0 start_thread()
        :0 __clone() (0x2b6be6672970+6D)
        asterisk <unknown>()
        asterisk <unknown>()
=== -------------------------------------------------------------------
===
=== Thread ID: 0x2b6c61393700 (do_monitor           started at [29097] chan_sip.c restart_monitor())
=== ---> Lock #0 (chan_sip.c): MUTEX 28505 handle_request_do &netlock 0x2b6c5293b7c0 (1)
        main/logger.c:1643 ast_bt_get_addresses() (0x50affe+1D)
        main/lock.c:218 __ast_pthread_mutex_lock() (0x503108+C9)
        channels/chan_sip.c:28508 handle_request_do()
        channels/chan_sip.c:28467 sipsock_read()
        main/io.c:292 ast_io_wait() (0x4fd017+19C)
        channels/chan_sip.c:29064 do_monitor()
        main/utils.c:1192 dummy_start()
        pthread_create.c:0 start_thread()
        :0 __clone() (0x2b6be6672970+6D)
=== ---> Lock #1 (chan_sip.c): MUTEX 16986 register_verify p 0x2b6c8c41e7a0 (1)
        main/logger.c:1643 ast_bt_get_addresses() (0x50affe+1D)
        main/lock.c:218 __ast_pthread_mutex_lock() (0x503108+C9)
        main/astobj2.c:195 __ao2_lock() (0x44ca86+96)
        channels/chan_sip.c:16986 register_verify()
        channels/chan_sip.c:28059 handle_request_register()
        channels/chan_sip.c:28367 handle_incoming()
        channels/chan_sip.c:28535 handle_request_do()
        channels/chan_sip.c:28467 sipsock_read()
        main/io.c:292 ast_io_wait() (0x4fd017+19C)
        channels/chan_sip.c:29064 do_monitor()
        main/utils.c:1192 dummy_start()
        pthread_create.c:0 start_thread()
        :0 __clone() (0x2b6be6672970+6D)
=== -------------------------------------------------------------------
===
=======================================================================
{noformat}


was (Author: rossbeer):
And again:

=======================================================================
=== 11.14.0
=== Currently Held Locks
=======================================================================
===
=== <pending> <lock#> (<file>): <lock type> <line num> <function> <lock name> <lock addr> (times locked)
===
=== Thread ID: 0x2b6c54c43700 (run_devstate_collector started at [  812] devicestate.c ast_enable_distributed_devstate())
=== ---> Lock #0 (astobj2.c): MUTEX 1093 internal_ao2_callback c 0x226fa00 (1)
        main/logger.c:1643 ast_bt_get_addresses() (0x50affe+1D)
        main/lock.c:218 __ast_pthread_mutex_lock() (0x503108+C9)
        main/astobj2.c:195 __ao2_lock() (0x44ca86+96)
        main/event.c:1466 event_update_cache()
        main/event.c:1505 handle_event()
        main/taskprocessor.c:332 tps_processing_function()
        main/utils.c:1192 dummy_start()
        pthread_create.c:0 start_thread()
        :0 __clone() (0x2b6be6672970+6D)
        asterisk <unknown>()
        asterisk <unknown>()
=== -------------------------------------------------------------------
===
=== Thread ID: 0x2b6c61393700 (do_monitor           started at [29097] chan_sip.c restart_monitor())
=== ---> Lock #0 (chan_sip.c): MUTEX 28505 handle_request_do &netlock 0x2b6c5293b7c0 (1)
        main/logger.c:1643 ast_bt_get_addresses() (0x50affe+1D)
        main/lock.c:218 __ast_pthread_mutex_lock() (0x503108+C9)
        channels/chan_sip.c:28508 handle_request_do()
        channels/chan_sip.c:28467 sipsock_read()
        main/io.c:292 ast_io_wait() (0x4fd017+19C)
        channels/chan_sip.c:29064 do_monitor()
        main/utils.c:1192 dummy_start()
        pthread_create.c:0 start_thread()
        :0 __clone() (0x2b6be6672970+6D)
=== ---> Lock #1 (chan_sip.c): MUTEX 16986 register_verify p 0x2b6c8c41e7a0 (1)
        main/logger.c:1643 ast_bt_get_addresses() (0x50affe+1D)
        main/lock.c:218 __ast_pthread_mutex_lock() (0x503108+C9)
        main/astobj2.c:195 __ao2_lock() (0x44ca86+96)
        channels/chan_sip.c:16986 register_verify()
        channels/chan_sip.c:28059 handle_request_register()
        channels/chan_sip.c:28367 handle_incoming()
        channels/chan_sip.c:28535 handle_request_do()
        channels/chan_sip.c:28467 sipsock_read()
        main/io.c:292 ast_io_wait() (0x4fd017+19C)
        channels/chan_sip.c:29064 do_monitor()
        main/utils.c:1192 dummy_start()
        pthread_create.c:0 start_thread()
        :0 __clone() (0x2b6be6672970+6D)
=== -------------------------------------------------------------------
===
=======================================================================

> Presence Causes Deadlock
> ------------------------
>
>                 Key: ASTERISK-24540
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-24540
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Channels/chan_sip/General
>    Affects Versions: 1.8.32.0, 11.14.0
>         Environment: CentOS 6.4, CentOS 6.5, CentOS 7
>            Reporter: Ross Beer
>         Attachments: backtrace-threads-clean.txt, threads.txt
>
>
> We are experiencing an issue where the SIP channel driver pauses and does not allow further registrations or calls to progress.
> Looking at core dumps shows lock waits for app_dial and presence.
> Unfortunately asterisk had not been compiled with the correct settings so I will need to provide further back traces when the issue happens again, however have attached the files I have now.



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list