Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

asterisk-1.8.20.1 + chan-sccp-b-4.1-r4242 - crash #50

Closed
marcelloceschia opened this issue Feb 20, 2013 · 9 comments
Closed

asterisk-1.8.20.1 + chan-sccp-b-4.1-r4242 - crash #50

marcelloceschia opened this issue Feb 20, 2013 · 9 comments
Milestone

Comments

@marcelloceschia
Copy link
Collaborator

Reported by: Nikola Ciprich
Date: 20.02.2013
Email: [Chan-sccp-b-discussion] asterisk-1.8.20.1 + chan-sccp-b-4.1-r4242 - crash

#0  0x00007fb94c5aea40 in ?? ()
#1  0x0000000000515c39 in ast_translate (path=0x7fb94c5ac170, f=0x7fb94c599ad0, consume=0) at translate.c:370
#2  0x00000000004609a2 in ast_write (chan=0x12e9bc8, fr=0x7fb94c599ad0) at channel.c:5017
#3  0x00000000004678d0 in ast_generic_bridge (c0=0x12e6688, c1=0x12e9bc8, config=0x4080da10, fo=0x4080d510, rc=0x4080d508) at channel.c:7300
#4  0x00000000004680b7 in ast_channel_bridge (c0=0x12e6688, c1=0x12e9bc8, config=0x4080da10, fo=0x4080d510, rc=0x4080d508) at channel.c:7658
#5  0x0000000000499101 in ast_bridge_call (chan=0x12e6688, peer=0x12e9bc8, config=0x4080da10) at features.c:4120
#6  0x00007fb942974386 in try_calling (qe=0x4080f710, options=<value optimized out>, announceoverride=<value optimized out>, url=0x4080f651 "", tries=<value optimized out>, noption=<value optimized out>, agi=0x0, macro=0x0, gosub=0x0, ringing=0) at app_queue.c:5322
#7  0x00007fb94297933a in queue_exec (chan=0x12e6688, data=<value optimized out>) at app_queue.c:6273
#8  0x00000000004d8b0f in pbx_exec (c=0x12e6688, app=0x121d230, data=0x40812de0 "dvernik_tlac1,tR,,,120") at pbx.c:1446
#9  0x00000000004e29c8 in pbx_extension_helper (c=0x12e6688, con=<value optimized out>, context=0x12e6be0 "internal_phones", exten=0x12e6c30 "sw_15_9", priority=26, label=0x0, callerid=0x12f1ca0 "50", action=E_SPAWN, found=0x40814f5c, combined_find_spawn=1) at pbx.c:4489
#10 0x00000000004e2f10 in ast_spawn_extension (c=0x7fb94c5ac170, context=0x7fb94c5ac170 "МYL\271\177", exten=0x0, priority=1281305168, callerid=<value optimized out>, found=<value optimized out>, combined_find_spawn=1) at pbx.c:5127
#11 0x00000000004e53c4 in __ast_pbx_run (c=0x12e6688, args=0x0) at pbx.c:5230
#12 0x00000000004e70eb in pbx_thread (data=0x7fb94c5ac170) at pbx.c:5571
#13 0x000000000051d51e in dummy_start (data=<value optimized out>) at utils.c:1010
#14 0x00007fb954fc273d in start_thread () from /lib64/libpthread.so.0
#15 0x00007fb955e874bd in clone () from /lib64/libc.so.6
@dkgroot
Copy link
Member

dkgroot commented Feb 21, 2013

#4  0x00000000004641a4 in __ast_channel_alloc_ap (needqueue=0, state=0, cid_num=0x7f4540054ec8 "11", cid_name=0x7f4540054e78 "Michaela Bilkova", acctcode=0x7f4540054ddc "", exten=0x145cdfd "", context=0x7f4540054d78 "internal", linkedid=0x7f455c10d974 "1361460453.169", amaflag=0, file=0x7f45598b04db "pbx_impl/ast/ast108.c", line=848, function=0x7f45598b0dc0 "sccp_wrapper_asterisk18_allocPBXChannel", name_fmt=0x7f45598b0de8 "SCCP/%s-%08X", ap1=0x7f45449010a0, ap2=0x7f4544901080) at channel.c:1150
#5  0x000000000046507e in __ast_channel_alloc (needqueue=2, state=1074073056, cid_num=0x0, cid_name=0x2 <Address 0x2 out of bounds>, acctcode=0x7f4540000488 "x\004", exten=0x145cdfd "", context=0x7f4540054d78 "internal", linkedid=0x7f455c10d974 "1361460453.169", amaflag=0, file=0x7f45598b04db "pbx_impl/ast/ast108.c", line=848, function=0x7f45598b0dc0 "sccp_wrapper_asterisk18_allocPBXChannel", name_fmt=0x7f45598b0de8 "SCCP/%s-%08X") at channel.c:1374

How does that work, cid_name going from out of bounds to being ok again ?

@dkgroot
Copy link
Member

dkgroot commented Mar 7, 2013

Closing issue. No extra information. Possible memory issue on reporters machine.

@dkgroot dkgroot closed this as completed Mar 7, 2013
@anyremote
Copy link

seems i have the same issue (Asterisk 1.8.32.1/Chan_SCCP-4.2.0_RC3_r6042)

  1. Asterisk gets an incoming call through the SIP trunk
  2. By IVR menu call is transferred to SCCP extension
  3. Asterisk crashed

@anyremote
Copy link

stacktrace

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f861e757700 (LWP 20925)]
0x000000000051bab4 in ?? ()
(gdb) bt
#0 0x000000000051bab4 in ?? ()
#1 0x000000000051bd3f in ast_translator_free_path ()
#2 0x000000000045d346 in ?? ()
#3 0x000000000045d8be in ?? ()
#4 0x000000000045da09 in ast_channel_make_compatible ()
#5 0x00007f86231cd334 in ?? () from /usr/lib64/asterisk/modules/app_dial.so
#6 0x00007f86231cf431 in ?? () from /usr/lib64/asterisk/modules/app_dial.so
#7 0x00007f86231d30d6 in ?? () from /usr/lib64/asterisk/modules/app_dial.so
#8 0x00000000004e381b in pbx_exec ()
#9 0x00000000004e40a9 in ?? ()
#10 0x00000000004e4580 in ast_spawn_extension ()
#11 0x00007f862a5be8e7 in ?? () from /usr/lib64/asterisk/modules/app_macro.so
#12 0x00000000004e381b in pbx_exec ()
#13 0x00000000004e40a9 in ?? ()
#14 0x00000000004e4580 in ast_spawn_extension ()
#15 0x00000000004e5675 in ?? ()
#16 0x00000000004e6afb in ?? ()
#17 0x0000000000522638 in ?? ()
#18 0x00000032bb8077e1 in start_thread () from /lib64/libpthread.so.0
#19 0x00000032bb0e68ed in clone () from /lib64/libc.so.6

@dkgroot
Copy link
Member

dkgroot commented Oct 16, 2015

Hi Mikhail,

Can you describe the steps required to reproduce the issue in a little bit more detail please. Does the IVR really perform a transfer or do you mean the end result of the IVR is a DIAL to an sccp device ?

Would it be possible to test this with master branch (>= revision c1642d) ? If the issue does not occur in this newer version you should be able to update to V4.2 or even svn-trunk / git-master (Both are considered stable).

With this older V4.1 version you would have run ./configure with --enable-debug --disable-optimization to make the stacktrace contain enough information to be usefull. With newer versions (V4.2 and up) this configure setting is the default.

@anyremote
Copy link

i have the following in extensions.conf:

exten => s,1,Answer()
exten => s,n,BackGround(vm-enter-num-to-call) ;
exten => s,n,WaitExten

so on incoming call it asks to enter number and then dials it

BTW, i manages to get a workaround:

my peer was defined as (users.conf):
[mytrunk]
type=peer
host=bla.bla.com
username=87564564843
insecure=port,invite
fromdomain=bla.bla.com
fromuser=87564564843
disallow=all
allow=ulaw
allow=g729
allow=alaw <----------no crash if i comment out this line
allow=gsm
qualify=yes
transport=tcp,udp
nat=yes
dtmfmode=inband
context=trunk_inbound
canreinvite=no

if i comment line allow=alaw asterisk starts to work properly

@anyremote
Copy link

possible it connected with absence of the package (default language is ru)
rpm -qa|grep aster-sounds
asterisk-sounds-core-ru-ulaw-1.4.25-1.el6.noarch
asterisk-sounds-core-en-ulaw-1.4.25-1.el6.noarch
asterisk-sounds-core-en-alaw-1.4.25-1.el6.noarch
asterisk-curl-1.8.32.1-1.el6.x86_64
asterisk-sounds-core-ru-gsm-1.4.25-1.el6.noarch
asterisk-sounds-core-en-1.4.25-1.el6.noarch
asterisk-sounds-1.2.1-5.nodist.rf.noarch
asterisk-sounds-core-ru-1.4.25-1.el6.noarch

so there are no ru-alaw installed, only en-alaw

@dkgroot
Copy link
Member

dkgroot commented Oct 16, 2015

Hi Mikhail,

Pretty impressed you where able to find that one. Chan-sccp-b should not be concerned about transcoding in any way. So the issue is still a little mysterious.

What does allow/disallow set in sccp.conf ?

We might have an issue with earlyrtp in this case, when BackGround starts to playback in the 'wrong' codec. Somehow the asterisk app_dial is not able to find a correct transcoding path between ulaw/alaw which should be pretty straight forward to be honest.

BTW using asterisk -rx "file convert [filename].ulaw [filename].alaw" You can pre-convert your files, so alaw files are also available. With a little bit of scripting you should be able to convert all your sound files.

@dkgroot
Copy link
Member

dkgroot commented Oct 16, 2015

Without a backtrace there is not much i can do. This looks like a transcoding issue, which may wel point to an issue in asterisk / app_dial.

Why are you still using V4.2.0 RC3 instead of V4.2 Stable or (V4.3 trunk) ? The first thing to do when you run into an issue, is to check if there the software might have been updated. Also Asterisk-1.8 is getting a little bit old by now, might be time to update to asterisk-11 (your choice).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants