[asterisk-dev] [Code Review] 4342: CHANNEL(peer), chan_iax2, res_fax, SNMP agent: Fix deadlock from reaching across a bridge.

Matt Jordan reviewboard at asterisk.org
Mon Jan 19 07:56:36 CST 2015


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4342/#review14222
-----------------------------------------------------------

Ship it!


Ship It!

- Matt Jordan


On Jan. 15, 2015, 12:33 p.m., rmudgett wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/4342/
> -----------------------------------------------------------
> 
> (Updated Jan. 15, 2015, 12:33 p.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Bugs: ASTERISK-24600
>     https://issues.asterisk.org/jira/browse/ASTERISK-24600
> 
> 
> Repository: Asterisk
> 
> 
> Description
> -------
> 
> Calling ast_channel_bridge_peer() cannot be done while holding any channel
> locks.  The reported issue hit the deadlock in chan_iax2, but an audit of
> the ast_channel_bridge_peer() calls found three more locations where the
> same deadlock can occur.
> 
> * Made CHANNEL(peer), res_fax, and the SNMP agent not call
> ast_channel_bridge_peer() with any channel locked.  For CHANNEL(peer) I
> had to rework the logic to not hold the channel lock.
> 
> * Made chan_iax2 no longer call ast_channel_bridge_peer().  It was done
> for legacy reasons that no longer apply.
> 
> * Removed the iax.conf forcejitterbuffer option.  It is now always enabled
> when the jitterbuffer option is enabled.  If you put a jitter buffer on a
> channel it will be on the channel.
> 
> 
> Diffs
> -----
> 
>   /branches/13/res/snmp/agent.c 430688 
>   /branches/13/res/res_fax.c 430688 
>   /branches/13/funcs/func_channel.c 430688 
>   /branches/13/configs/samples/iax.conf.sample 430688 
>   /branches/13/channels/chan_iax2.c 430688 
>   /branches/13/UPGRADE.txt 430688 
> 
> Diff: https://reviewboard.asterisk.org/r/4342/diff/
> 
> 
> Testing
> -------
> 
> Testsuite tests still pass for FAX.  The full testsuite didn't hit any deadlock.
> 
> 
> Thanks,
> 
> rmudgett
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20150119/e00ee498/attachment-0001.html>


More information about the asterisk-dev mailing list