[Home]

Summary:ASTERISK-10675: Asterisk 1.4.13 Produces mutex errors and too many files open error
Reporter:Ahmed Abdullah (safarifone)Labels:
Date Opened:2007-11-02 13:16:46Date Closed:2011-06-07 14:03:23
Priority:MajorRegression?No
Status:Closed/CompleteComponents:Core/Channels
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:I just recently installed the Asterisk version 1.4.13 on Dell PowerEdge
Machine with 4GB RAM, Quad Core 1.8 Intel CPU Running RHEL5.
I am running SIP to SIP bridged calls with no transacoding.
When the number of calls reach between 70 and 80 active calls, i experience the
following errors. Asterisk does crash, but also not accepting any new calls.
--------------some output of /var/log/asterisk/messages-------------------------[Oct 30 13:00:08] ERROR[8405] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:00:08] ERROR[8405] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): Error releasing mutex: Operation not permitted
[Oct 30 13:00:08] ERROR[8408] rtp.c: Unable to allocate socket: Too many open files
[Oct 30 13:00:08] ERROR[8408] chan_sip.c: Unable to build sip pvt data for '251915755730@209.167.51.227' (Out of memory or socket error)
[Oct 30 13:00:08] ERROR[27207] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15190 (sipsock_read): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:00:08] ERROR[27207] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15190 (sipsock_read): Error releasing mutex: Operation not permitted
[Oct 30 13:00:08] ERROR[27207] rtp.c: Unable to allocate socket: Too many open files
[Oct 30 13:00:10] ERROR[8413] rtp.c: Unable to allocate socket: Too many open files
[Oct 30 13:00:10] ERROR[8413] chan_sip.c: Unable to build sip pvt data for '25215924032@85.90.45.38' (Out of memory or socket error)
[Oct 30 13:00:11] ERROR[8420] rtp.c: Unable to allocate socket: Too many open files
[Oct 30 13:00:11] ERROR[8420] chan_sip.c: Unable to build sip pvt data for '25215512220@85.90.45.38' (Out of memory or socket error)
[Oct 30 13:00:18] ERROR[8467] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:00:18] ERROR[8467] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): Error releasing mutex: Operation not permitted
[Oct 30 13:00:18] ERROR[27207] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15190 (sipsock_read): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:00:18] ERROR[27207] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15190 (sipsock_read): Error releasing mutex: Operation not permitted
[Oct 30 13:00:18] ERROR[27207] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15190 (sipsock_read): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:00:18] ERROR[27207] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15190 (sipsock_read): Error releasing mutex: Operation not permitted
[Oct 30 13:00:19] ERROR[8472] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:00:19] ERROR[8472] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): Error releasing mutex: Operation not permitted
[Oct 30 13:00:20] ERROR[8477] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:00:20] ERROR[8477] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): Error releasing mutex: Operation not permitted
[Oct 30 13:00:24] ERROR[27207] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15190 (sipsock_read): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:00:24] ERROR[27207] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15190 (sipsock_read): Error releasing mutex: Operation not permitted
[Oct 30 13:00:41] ERROR[8643] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:00:41] ERROR[8643] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): Error releasing mutex: Operation not permitted
[Oct 30 13:17:17] ERROR[27207] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15190 (sipsock_read): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:17:17] ERROR[27207] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15190 (sipsock_read): Error releasing mutex: Operation not permitted
[Oct 30 13:17:18] ERROR[27207] rtp.c: Unable to allocate socket: Too many open files
[Oct 30 13:17:18] ERROR[13276] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:17:18] ERROR[13276] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): Error releasing mutex: Operation not permitted
[Oct 30 13:17:19] ERROR[13279] rtp.c: Unable to allocate socket: Too many open files
[Oct 30 13:17:19] ERROR[13279] chan_sip.c: Unable to build sip pvt data for '25215592933@85.90.45.38' (Out of memory or socket error)
[Oct 30 13:18:41] ERROR[13930] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:18:41] ERROR[13930] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): Error releasing mutex: Operation not permitted
[Oct 30 13:18:41] ERROR[13936] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:18:41] ERROR[13936] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): Error releasing mutex: Operation not permitted
[Oct 30 13:18:41] ERROR[13942] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): mutex '&p->lock' freed more times than we've locked!
[Oct 30 13:18:41] ERROR[13942] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): Error releasing mutex: Operation not permitted
[Oct 31 13:35:05] ERROR[27207] rtp.c: Unable to allocate socket: Too many open files
[Oct 31 13:35:06] ERROR[31058] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): mutex '&p->lock' freed more times than we've locked!
[Oct 31 13:35:06] ERROR[31058] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): Error releasing mutex: Operation not permitted
[Oct 31 13:35:06] ERROR[31079] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): mutex '&p->lock' freed more times than we've locked!
[Oct 31 13:35:06] ERROR[31079] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15721 (sip_request_call): Error releasing mutex: Operation not permitted
[Nov  1 11:55:54] ERROR[27207] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15190 (sipsock_read): mutex '&p->lock' freed more times than we've locked!
[Nov  1 11:55:54] ERROR[27207] /usr/src/asterisk-1.4.13/include/asterisk/lock.h: chan_sip.c line 15190 (sipsock_read): Error releasing mutex: Operation not permitted
[Nov  1 11:55:55] ERROR[27207] rtp.c: Unable to allocate socket: Too many open files
[Nov  1 11:55:56] ERROR[27207] rtp.c: Unable to allocate socket: Too many open files
Comments:By: Jason Parker (jparker) 2007-11-02 14:04:33

Can you show us the output of `ulimit -a` on a console?

This definitely looks like a ulimit problem.

By: Ahmed Abdullah (safarifone) 2007-11-03 02:18:41

Please find below the output of the ulimit -a:
------------------------------------------------------------------------------
[root@gw4 ~]# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
max nice                        (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 65536
max locked memory       (kbytes, -l) 32
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
max rt priority                 (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 65536
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
[root@gw4 ~]#

By: Ronald Chan (loloski) 2007-11-04 02:46:51.000-0600

safarifone:

could you please try this setting, ulimit -n 4096 then restart asterisk
i personally think that 4096 is a sane value.

By: Ahmed Abdullah (safarifone) 2007-11-13 07:41:53.000-0600

Thanks loloski;
The problem was the ulimit as you said and is now resolved