[Home]

Summary:ASTERISK-10218: On incomming mobile-calls the asterisk crash
Reporter:heikothole (heikothole)Labels:
Date Opened:2007-09-01 17:37:26Date Closed:2007-09-08 05:13:33
Priority:CriticalRegression?No
Status:Closed/CompleteComponents:Addons/chan_mobile
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) gdb-bt.txt
Description:Hello,
I´ve installed asterisk  and astrisk-addons from svn.
I use chan_mobile for connecting my mobile-phone with asterisk.
When I call my mobile-phone, asterisk will call my sip-phones. When I accept the call from a sip-phone, the asterisk will crash.


****** ADDITIONAL INFORMATION ******

Here are the last lines from asterisk:

   -- Executing [s@incoming-mobile-heiko:1] Verbose("Mobile/EL71-9576", "Incoming call from BT line  CallerID=") in new stack
Incoming call from BT line  CallerID=
   -- Executing [s@incoming-mobile-heiko:2] Dial("Mobile/EL71-9576", "SIP/20&SIP/21&SIP/22,,t") in new stack
 == Using TOS bits 0
 == Using CoS mark 5
   -- Called 20
 == Using TOS bits 0
 == Using CoS mark 5
[Sep  2 00:52:24] WARNING[22351]: app_dial.c:1325 dial_exec_full: Unable to create channel of type 'SIP' (cause 3 - No route to destination)
 == Using TOS bits 0
 == Using CoS mark 5
   -- Called 22
   -- SIP/20-08208528 is ringing
   -- SIP/20-08208528 is ringing
   -- SIP/22-08226f60 is ringing
   -- SIP/20-08208528 is ringing
--- set_address_from_contact host '192.168.0.60'
   -- SIP/22-08226f60 answered Mobile/EL71-9576
[Sep  2 00:52:27] NOTICE[22351]: chan_mobile.c:1767 do_sco_listen: sco_socket returns 30...
[Sep  2 00:52:27] NOTICE[22351]: chan_mobile.c:1783 do_sco_listen: about to close the pvt-sco_socket and set it ns
[Sep  2 00:52:27] NOTICE[22351]: chan_mobile.c:1765 do_sco_listen: About to accept the sco_socket...
server01*CLI> *** glibc detected *** double free or corruption (out): 0x081ad7b8 ***

Disconnected from Asterisk server
server01:/usr/src/asterisk-svn/asterisk-addons-trunk# /usr/sbin/safe_asterisk: line 117: 22343 Abgebrochen             (core dumped) nice -n $PRIORITY ${ASTSBINDIR}/asterisk -f ${CLIARGS} ${ASTARGS} >&/dev/${TTY} </dev/${TTY}
Asterisk ended with exit status 134
Asterisk exited on signal 6.
Automatically restarting Asterisk.
mpg123: Kein Prozess abgebrochen
Comments:By: heikothole (heikothole) 2007-09-02 05:40:50

Hello,

I don´t know if it helps, but when I stop my asterisk with "stop gracefully" it will crash, too.

Here is the output:
*CLI> stop gracefully
Waiting for inactivity to perform halt...
P[ 1] Destroying this port.
 == Unregistered application 'VoiceMail'
 == Unregistered application 'VoiceMailMain'
 == Unregistered application 'MailboxExists'
 == Unregistered application 'VMAuthenticate'
 == Unregistered custom function MAILBOX_EXISTS
 == Manager unregistered action VoicemailUsersList
 == Unregistered application 'SoftHangup'
 == Unregistered translator 'lintospeex' from format slin to speex
 == Unregistered translator 'speextolin' from format speex to slin
 == Unregistered custom function CURL
 == Unregistered custom function CUT
 == Unregistered custom function SORT
 == Unregistered translator 'lintogsm' from format slin to gsm
 == Unregistered translator 'gsmtolin' from format gsm to slin
 == Unregistered application 'Echo'
 == Unregistered format iLBC
 == Unregistered custom function ODBC_PRESENCE
 == Unregistered custom function ODBC_ANTIGF
 == Unregistered custom function ODBC_SQL
 == Unregistered custom function SQL_ESC
 == Unregistered custom function ODBC_FETCH
 == Unregistered application 'ODBCFinish'
 == Unregistered application 'ZapBarge'
 == Unregistered application 'MP3Player'
 == Unregistered format wav
 == Unregistered custom function ISNULL
 == Unregistered custom function SET
 == Unregistered custom function EXISTS
 == Unregistered custom function IF
 == Unregistered custom function IFTIME
 == Unregistered custom function IMPORT
 == Unregistered application 'PrivacyManager'
 == Unregistered application 'ADSIProg'
 == Unregistered custom function VOLUME
 == Unregistered 'cdr-custom' CDR backend
 == Unregistered application 'Record'
 == Unregistered format g723sf
 == Unregistered application 'WaitForSilence'
 == Unregistered application 'Directory'
 == Unregistered custom function ENV
 == Unregistered custom function STAT
 == Unregistered custom function GROUP_COUNT
 == Unregistered custom function GROUP_MATCH_COUNT
 == Unregistered custom function GROUP_LIST
 == Unregistered custom function GROUP
 == Unregistered custom function TIMEOUT
 == Unregistered application 'Festival'
 == Unregistered application 'SendDTMF'
 == Manager unregistered action PlayDTMF
 == Unregistered application 'ReadFile'
 == Unregistered application 'MinivmRecord'
 == Unregistered application 'MinivmGreet'
 == Unregistered application 'MinivmNotify'
 == Unregistered application 'MinivmDelete'
 == Unregistered application 'MinivmAccMess'
 == Unregistered custom function MINIVMACCOUNT
 == Unregistered custom function MINIVMCOUNTER
 == Unregistered application 'Read'
 == Unregistered application 'ChanIsAvail'
 == Manager unregistered action ZapDialOffhook
 == Manager unregistered action ZapHangup
 == Manager unregistered action ZapTransfer
 == Manager unregistered action ZapDNDoff
 == Manager unregistered action ZapDNDon
 == Manager unregistered action ZapShowChannels
 == Manager unregistered action ZapRestart
 == Unregistered channel type 'Zap'
   -- Unregistered channel -2
 == Unregistered custom function DEVSTATE
 == Unregistered format g729
 == Unregistered format g726-40
 == Unregistered format g726-32
 == Unregistered format g726-24
 == Unregistered format g726-16
 == Unregistered channel type 'MGCP'
 == Unregistered custom function VERSION
 == Unregistered custom function VMCOUNT
 == Unregistered application 'System'
 == Unregistered application 'TrySystem'
 == Unregistered channel type 'Local'
 == Unregistered custom function REALTIME
 == Unregistered custom function FIELDQTY
 == Unregistered custom function FILTER
 == Unregistered custom function REGEX
 == Unregistered custom function ARRAY
 == Unregistered custom function QUOTE
 == Unregistered custom function LEN
 == Unregistered custom function STRFTIME
 == Unregistered custom function STRPTIME
 == Unregistered custom function EVAL
 == Unregistered custom function KEYPADHASH
 == Unregistered custom function SPRINTF
 == Unregistered custom function HASHKEYS
 == Unregistered custom function HASH
 == Unregistered application 'ClearHash'
 == Unregistered custom function LOCK
 == Unregistered custom function TRYLOCK
 == Unregistered custom function UNLOCK
 == Unregistered application 'Return'
 == Unregistered application 'StackPop'
 == Unregistered application 'GosubIf'
 == Unregistered application 'Gosub'
 == Unregistered custom function LOCAL
 == Unregistered channel type 'Skinny'
 == Unregistered custom function URIDECODE
 == Unregistered custom function URIENCODE
 == Unregistered application 'UserEvent'
 == Unregistered application 'ForkCDR'
 == Unregistered format h264
 == Unregistered application 'Verbose'
 == Unregistered application 'Log'
 == Unregistered channel type 'Agent'
 == Unregistered custom function AGENT
 == Unregistered application 'AgentLogin'
 == Unregistered application 'AgentMonitorOutgoing'
 == Manager unregistered action Agents
 == Manager unregistered action AgentLogoff
 == Unregistered format h263
 == Unregistered application 'DBdeltree'
 == Unregistered application 'DBdel'
 == Unregistered application 'Milliwatt'
 == Unregistered application 'ZapScan'
 == Unregistered custom function DB
 == Unregistered custom function DB_EXISTS
 == Unregistered custom function DB_DELETE
 == Unregistered format ogg_vorbis
 == Unregistered application 'SendImage'
 == Unregistered translator 'g726tolin' from format g726 to slin
 == Unregistered translator 'lintog726' from format slin to g726
 == Unregistered translator 'g726aal2tolin' from format g726aal2 to slin
 == Unregistered translator 'lintog726aal2' from format slin to g726aal2
 == Unregistered translator 'g726aal2tog726' from format g726aal2 to g726
 == Unregistered translator 'g726tog726aal2' from format g726 to g726aal2
 == Unregistered format gsm
 == Unregistered format wav49
 == Unregistered custom function MATH
 == Unregistered application 'WaitForRing'
 == Unregistered application 'DumpChan'
 == Unregistered channel type 'Gtalk'
 == Unregistered application 'While'
 == Unregistered application 'EndWhile'
 == Unregistered application 'ExitWhile'
 == Unregistered application 'ContinueWhile'
 == Unregistered application 'SpeechCreate'
 == Unregistered application 'SpeechLoadGrammar'
 == Unregistered application 'SpeechUnloadGrammar'
 == Unregistered application 'SpeechActivateGrammar'
 == Unregistered application 'SpeechDeactivateGrammar'
 == Unregistered application 'SpeechStart'
 == Unregistered application 'SpeechBackground'
 == Unregistered application 'SpeechDestroy'
 == Unregistered application 'SpeechProcessingSound'
 == Unregistered custom function SPEECH
 == Unregistered custom function SPEECH_SCORE
 == Unregistered custom function SPEECH_TEXT
 == Unregistered custom function SPEECH_GRAMMAR
 == Unregistered custom function SPEECH_ENGINE
 == Unregistered custom function SPEECH_RESULTS_TYPE
 == Unregistered application 'SayUnixTime'
 == Unregistered application 'DateTime'
 == Unregistered custom function RAND
 == Unregistered 'csv' CDR backend
 == Unregistered application 'ChannelRedirect'
 == Unregistered custom function DUNDILOOKUP
 == Unregistered custom function DUNDIQUERY
 == Unregistered custom function DUNDIRESULT
 == Unregistered custom function CHANNEL
 == Unregistered application 'DISA'
 == Unregistered application 'ZapRAS'
 == Unregistered custom function CDR
 == Unregistered application 'Exec'
 == Unregistered application 'TryExec'
 == Unregistered application 'ExecIf'
 == Unregistered custom function ICONV
 == Unregistered application 'Flash'
 == Unregistered translator 'ulawtoalaw' from format ulaw to alaw
 == Unregistered translator 'alawtoulaw' from format alaw to ulaw
 == Unregistered application 'ControlPlayback'
 == Unregistered custom function BLACKLIST
 == Unregistered format 'jpg' (JPEG (Joint Picture Experts Group))
 == Unregistered custom function CALLERPRES
 == Unregistered custom function CALLERID
 == Unregistered translator 'lintoalaw' from format slin to alaw
 == Unregistered translator 'alawtolin' from format alaw to slin
 == Unregistered application 'ReadExten'
 == Unregistered custom function VALID_EXTEN
 == Unregistered application 'SendURL'
 == Manager unregistered action QueueStatus
 == Manager unregistered action Queues
 == Manager unregistered action QueueSummary
 == Manager unregistered action QueueAdd
 == Manager unregistered action QueueRemove
 == Manager unregistered action QueuePause
 == Manager unregistered action QueueLog
 == Unregistered application 'AddQueueMember'
 == Unregistered application 'RemoveQueueMember'
 == Unregistered application 'PauseQueueMember'
 == Unregistered application 'UnpauseQueueMember'
 == Unregistered application 'QueueLog'
 == Unregistered application 'Queue'
 == Unregistered custom function QUEUE_VARIABLES
 == Unregistered custom function QUEUE_MEMBER_COUNT
 == Unregistered custom function QUEUE_MEMBER_LIST
 == Unregistered custom function QUEUE_WAITING_COUNT
 == Unregistered application 'BackgroundDetect'
 == Unregistered application 'ChanSpy'
 == Unregistered application 'ExtenSpy'
 == Unregistered custom function IFMODULE
 == Manager unregistered action MeetmeMute
 == Manager unregistered action MeetmeUnmute
 == Unregistered application 'MeetMeChannelAdmin'
 == Unregistered application 'MeetMeAdmin'
 == Unregistered application 'MeetMeCount'
 == Unregistered application 'MeetMe'
 == Unregistered application 'SLAStation'
 == Unregistered application 'SLATrunk'
 == Unregistered application 'Playback'
 == Unregistered custom function MD5
 == Unregistered format sln
 == Unregistered channel type 'Console'
 == Unregistered translator 'lintoilbc' from format slin to ilbc
 == Unregistered translator 'ilbctolin' from format ilbc to slin
 == Unregistered application 'StopMixMonitor'
 == Unregistered application 'MixMonitor'
 == Unregistered custom function SHA1
 == Unregistered application 'misdn_set_opt'
 == Unregistered application 'misdn_facility'
 == Unregistered application 'misdn_check_l2l1'
 == Unregistered channel type 'mISDN'
P[ 0] Closing mISDN device
mISDN_close: fid(15) isize(131072) inbuf(0xb713a008) irp(0xb713a008) iend(0xb713a008)
 == Unregistered application 'SMS'
 == Unregistered translator 'lintolpc10' from format slin to lpc10
 == Unregistered translator 'lpc10tolin' from format lpc10 to slin
 == Unregistered custom function IAXPEER
 == Unregistered custom function IAXVAR
 == Manager unregistered action IAXpeers
 == Manager unregistered action IAXnetstats
 == Unregistered application 'IAX2Provision'
 == Unregistered channel type 'IAX2'
Speicherzugriffsfehler
server01:~#

("Speicherzugriffsfehler" means "segmentation fault")

Perhaps it is interesting:
First I used Asterisk 1.4.4. Then I would connect my mobliephone with asterisk and I checked out Version 1.4.11 (from the tags) and compiled and installed it. Then I checked out the asterisk-addons from trunk and compiled it. But I got an error (because of the chang from ast_debug to ast_log). So I checked out asterisk from trunk (rev 81417). Now I could compile asterisk and asterisk-addons.

By: Josef Liska (phokz) 2007-09-05 15:12:33

Hello,
try to do following:

1. stop asterisk
2. enable core dumping: ulimit -c 1000000000
3. run asterisk from console: asterisk -vvvc
4. call your mobile

When it crashes, it generates core dump, file named core or core.$PID.
5. Then run gdb:  gdb /usr/sbin/asterisk ./core.2874
issue command bt (back trace).

Share results.

By: tootai (tootai) 2007-09-06 03:31:20

I have the same problem and the gdb-bt.txt file is the BT of a core dump I had two days ago.

Daniel

By: heikothole (heikothole) 2007-09-06 11:33:07

Hello,

first I startet asterisk and stoped it with "stop gracefully".
Here is the output from bt (and a few lines before):

Reading symbols from /lib/libgcc_s.so.1...done.
Loaded symbols for /lib/libgcc_s.so.1
Core was generated by `asterisk -vvvc'.
Program terminated with signal 11, Segmentation fault.
#0  0xb7cd5d3f in malloc_usable_size () from /lib/tls/i686/cmov/libc.so.6
(gdb) bt
#0  0xb7cd5d3f in malloc_usable_size () from /lib/tls/i686/cmov/libc.so.6
#1  0xb7cd7d38 in free () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7cd99ff in malloc () from /lib/tls/i686/cmov/libc.so.6
#3  0xb7cfb288 in opendir () from /lib/tls/i686/cmov/libc.so.6
#4  0xb5a04d9c in scan_thread (unused=0x0) at pbx_spool.c:459
ASTERISK-1  0x08108b20 in dummy_start (data=0x821b678) at utils.c:789
ASTERISK-2  0xb7e22240 in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
ASTERISK-3  0xb7d3d4ae in clone () from /lib/tls/i686/cmov/libc.so.6


then I startet asterisk again and called from a sip-phone my extension 40. This calles a hotline via my mobile-phone (exten => 40,1,Dial(Mobile/EL71/1212)). Then the asterisk crashed again. Here is the aoutput from gdb:

Reading symbols from /usr/lib/asterisk/modules/app_voicemail.so...done.
Loaded symbols for /usr/lib/asterisk/modules/app_voicemail.so
Core was generated by `asterisk -c'.
Program terminated with signal 11, Segmentation fault.
#0  __ast_read (chan=0x822efa8, dropaudio=0) at channel.c:2209
2209    channel.c: Datei oder Verzeichnis nicht gefunden.
       in channel.c
(gdb) bt
#0  __ast_read (chan=0x822efa8, dropaudio=0) at channel.c:2209
#1  0x0808bad2 in ast_channel_bridge (c0=0x822cc98, c1=dwarf2_read_address: Corrupted DWARF expression.
) at channel.c:2484
#2  0xb782d5dd in ast_bridge_call (chan=0x822cc98, peer=0x822efa8,
   config=0xb56b8e24) at res_features.c:1800
#3  0xb7614a6f in dial_exec_full (chan=0x822cc98, data=<value optimized out>,
   peerflags=0xb56b8ef0, continue_exec=0x0) at app_dial.c:1770
#4  0xb76198e9 in dial_exec (chan=0x822cc98, data=0xb56bcfe8)
   at app_dial.c:1841
ASTERISK-1  0x080cd029 in pbx_exec (c=0x822cc98, app=0x81bc878, data=0xb56bcfe8)
   at pbx.c:561
ASTERISK-2  0x080d545f in pbx_extension_helper (c=0x822cc98,
   con=<value optimized out>, context=0x822ce20 "meine-telefone",
   exten=0x822ce70 "40", priority=1, label=0x0, callerid=0x8225af0 "20",
   action=E_SPAWN) at pbx.c:1777
ASTERISK-3  0x080d7250 in __ast_pbx_run (c=0x822cc98) at pbx.c:2268
ASTERISK-4  0x080d83be in pbx_thread (data=0x822cc98) at pbx.c:2593
ASTERISK-5  0x08108b20 in dummy_start (data=0x82255e0) at utils.c:789
ASTERISK-6 0xb7d7f240 in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
ASTERISK-7 0xb7c9a4ae in clone () from /lib/tls/i686/cmov/libc.so.6
(gdb)



Heiko



By: Dave Bowerman (dbowerman) 2007-09-07 20:14:36

Could you retest this with the latest trunk please?

By: tootai (tootai) 2007-09-08 04:57:34

I install latest trunk of chan_mobile and tested with several incoming calls. So far so good, no crash :-) Thanks.

Daniel

By: Michiel van Baak (mvanbaak) 2007-09-08 05:13:30

@tootai Thanks for testing and reporting back.