[asterisk-bugs] [JIRA] (ASTERISK-25645) res_rtp_asterisk: Lock inversion
Joshua Colp (JIRA)
noreply at issues.asterisk.org
Wed Dec 23 10:19:32 CST 2015
[ https://issues.asterisk.org/jira/browse/ASTERISK-25645?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Joshua Colp updated ASTERISK-25645:
-----------------------------------
Description:
Reported by Steve Davies on asterisk-dev:
commit 5e6b1476a087407a052f007d326c504cfeefebe7
ASTERISK-25614
2 code paths which approximate the following will cause a lock-inversion deadlock:
approximate call orders are:
a)
pj_timer_heap_poll (PJ_LOCK)
ast_rtp_on_ice_complete
ast_rtp_instance_set_remote_address
remote_address_set
ast_rtp_remote_address_set
(DTLS_LOCK)
...
b)
ast_pbx...
app_dial
bridge...
read
rtp_read
...
__rtp_recvfrom
(DTLS_LOCK)
dtls_srtp_check_pending
__rtp_sendto
pj_ice_sess_send_data
(PJ_LOCK)
was:
commit 5e6b1476a087407a052f007d326c504cfeefebe7
ASTERISK-25614
2 code paths which approximate the following will cause a lock-inversion deadlock:
approximate call orders are:
a)
pj_timer_heap_poll (PJ_LOCK)
ast_rtp_on_ice_complete
ast_rtp_instance_set_remote_address
remote_address_set
ast_rtp_remote_address_set
(DTLS_LOCK)
...
b)
ast_pbx...
app_dial
bridge...
read
rtp_read
...
__rtp_recvfrom
(DTLS_LOCK)
dtls_srtp_check_pending
__rtp_sendto
pj_ice_sess_send_data
(PJ_LOCK)
> res_rtp_asterisk: Lock inversion
> --------------------------------
>
> Key: ASTERISK-25645
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-25645
> Project: Asterisk
> Issue Type: Bug
> Security Level: None
> Components: Resources/res_rtp_asterisk
> Reporter: Joshua Colp
>
> Reported by Steve Davies on asterisk-dev:
> commit 5e6b1476a087407a052f007d326c504cfeefebe7
> ASTERISK-25614
> 2 code paths which approximate the following will cause a lock-inversion deadlock:
> approximate call orders are:
> a)
> pj_timer_heap_poll (PJ_LOCK)
> ast_rtp_on_ice_complete
> ast_rtp_instance_set_remote_address
> remote_address_set
> ast_rtp_remote_address_set
> (DTLS_LOCK)
> ...
> b)
> ast_pbx...
> app_dial
> bridge...
> read
> rtp_read
> ...
> __rtp_recvfrom
> (DTLS_LOCK)
> dtls_srtp_check_pending
> __rtp_sendto
> pj_ice_sess_send_data
> (PJ_LOCK)
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list