[asterisk-commits] dvossel: branch dvossel/masq_locking_order_trunk r221165 - /team/dvossel/masq...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Sep 30 10:50:50 CDT 2009


Author: dvossel
Date: Wed Sep 30 10:50:46 2009
New Revision: 221165

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=221165
Log:
This branch is dedicated to issue #15911 and all the good times it shall bring.

ast_do_masquerade does not follow proper locking order in trunk. Since the name
of a channel may change during the masquerade, and the name is used as the hash
value for the channel's ao2 container, the channel has to be unlinked and then
re-linked with the new hash value.  Unlinking/linking lockes the container while
the channel is already locked... This is not proper locking order. If a channel
lock is held while attempting to obtain the container lock, deadlock madness will
ensue.

Added:
    team/dvossel/masq_locking_order_trunk/
      - copied from r221156, trunk/




More information about the asterisk-commits mailing list