bridge: Fix softmix bridge deadlock.
authorRichard Mudgett <rmudgett@digium.com>
Wed, 16 Aug 2017 20:22:04 +0000 (15:22 -0500)
committerRichard Mudgett <rmudgett@digium.com>
Tue, 22 Aug 2017 16:59:49 +0000 (11:59 -0500)
commit6ad8249233080aab4f2ea0e72f3e0b7ef384f243
tree923b8dfbbb3e6acb5db30ba351e2b8a3c77c0158
parent9c70c883697d63e6f16b0b06b688a6131423c7e1
bridge: Fix softmix bridge deadlock.

* Fix deadlock in
bridge_softmix.c:softmix_bridge_stream_topology_changed() between
bridge_channel and channel locks.

* The new bridge technology topology change callbacks must be called with
the bridge locked.  The callback references the bridge channel list, the
bridge technology could change, and the bridge stream mapping is updated.

ASTERISK-27212

Change-Id: Ide4360ab853607e738ad471721af3f561ddd83be
bridges/bridge_softmix.c
include/asterisk/bridge_channel.h
include/asterisk/bridge_technology.h
main/bridge_channel.c