|Summary:||ASTERISK-18613: Deadlock (SIP not responding anymore)|
|Reporter:||Thomas Arimont (tomaso)||Labels:|
|Date Opened:||2011-09-23 06:54:10||Date Closed:||2011-09-26 14:33:40|
|Environment:||Attachments:||( 0) deadlock_backtrace.txt|
( 1) deadlock_core_show_locks.txt
( 2) jira_asterisk_18613_v1.8.patch
|Description:||In a heavy traffic situation using sipp we can force a deadlock. Please see the attached core show log and gdb backtrace log for details.|
We can easily replicate this issue in our current configuration,
Version 126.96.36.199 shows the same issue.
|Comments:||By: Richard Mudgett (rmudgett) 2011-09-23 14:32:29.137-0500|
[^jira_asterisk_18613_v1.8.patch] should fix the deadlock.
There were two things that could cause the deadlock.
1) The dummy channel should not be destroyed using ast_channel_release() because it is the primary cause of this deadlock. (Principle cause of the deadlock.)
2) Calling ast_call() with channel locks held is not good since chan_local cannot perform deadlock avoidance correctly. (Potential deadlock exposed by this deadlock.)
By: Thomas Arimont (tomaso) 2011-09-26 09:29:55.197-0500
thanks a lot. Your fix (applied to 188.8.131.52) seems to resolve this issue. I couldn't replicate this deadlock anymore in our scenario.
By: Sebastian Gutierrez (sum) 2011-09-26 13:08:34.784-0500
is this on 1.8.7 also? I'm planning to move from 184.108.40.206 to 1.8.7 but this could be a bloquer.
By: Richard Mudgett (rmudgett) 2011-09-26 14:41:03.208-0500
The patch was just committed and will be in v1.8.8.
By: Sebastian Gutierrez (sum) 2011-11-20 17:54:00.418-0600
do you think I could port this to 220.127.116.11? to resolve sip deadlocks?
By: Richard Mudgett (rmudgett) 2011-11-21 10:19:11.618-0600
No this patch is not portable to v1.6.20. The locking is very different between the two versions.