[Asterisk-code-review] stasis/control: Fix possible deadlock with swap channel (asterisk[13])
Richard Mudgett
asteriskteam at digium.com
Wed Sep 6 12:42:54 CDT 2017
Richard Mudgett has uploaded a new patch set (#5) to the change originally created by George Joseph. ( https://gerrit.asterisk.org/6366 )
Change subject: stasis/control: Fix possible deadlock with swap channel
......................................................................
stasis/control: Fix possible deadlock with swap channel
If an error occurs during a bridge impart it's possible that
the "bridge_after" callback might try to run before
control_swap_channel_in_bridge has been signalled to continue.
Since control_swap_channel_in_bridge is holding the control lock
and the callback needs it, a deadlock will occur.
* control_swap_channel_in_bridge now only holds the control
lock while it's actually modifying the control structure and
releases it while the bridge impart is running.
* bridge_after_cb is now tolerant of impart failures.
Change-Id: Ifd239aa93955b3eb475521f61e284fcb0da2c3b3
---
M include/asterisk/bridge_after.h
M main/bridge.c
M main/bridge_after.c
M res/stasis/control.c
4 files changed, 94 insertions(+), 62 deletions(-)
git pull ssh://gerrit.asterisk.org:29418/asterisk refs/changes/66/6366/5
--
To view, visit https://gerrit.asterisk.org/6366
To unsubscribe, visit https://gerrit.asterisk.org/settings
Gerrit-Project: asterisk
Gerrit-Branch: 13
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ifd239aa93955b3eb475521f61e284fcb0da2c3b3
Gerrit-Change-Number: 6366
Gerrit-PatchSet: 5
Gerrit-Owner: George Joseph <gjoseph at digium.com>
Gerrit-Reviewer: Jenkins2
Gerrit-Reviewer: Richard Mudgett <rmudgett at digium.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-code-review/attachments/20170906/3288b9e3/attachment.html>
More information about the asterisk-code-review
mailing list