diff options
author | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-08-16 21:29:24 +0000 |
---|---|---|
committer | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-08-16 21:29:24 +0000 |
commit | 9427c14349cb0b7ccc7531782ac551803db32469 (patch) | |
tree | 822b3dfab13c5eb5f4a886ffc487a074e6b5e9f7 /CHANGES | |
parent | f5610ad0be253241af9a18911506183b445f6beb (diff) |
Fix more deadlocks in chan_iax2 that were introduced by making frame handling
and scheduling multi-threaded. Unfortunately, we have to do some expensive
deadlock avoidance when queueing frames on to the ast_channel owner of the IAX2
pvt struct. This was already handled for regular frames, but ast_queue_hangup
and ast_queue_control were still used directly. Making these changes introduced
even more places where the IAX2 pvt struct can disappear in the context of a
function holding its lock due to calling a function that has to unlock/lock it
to avoid deadlocks. I went through and fixed all of these places to account for
this possibility.
(issue #10362, patch by me)
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@79756 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'CHANGES')
0 files changed, 0 insertions, 0 deletions