Folks,
I have an RH machine which was running Asterisk 1.0-RC1. This evening i switched
to
Asterisk 1.0.1. Installation was successful, however Asterisk terminates
abnormally
during startup flashing an 'Illegal Instruction' message on the console.
I noticed that
this happens while loading the iax2 module. I am attaching the trace of core
with this.
Can anyone tell me what is going wrong and how to fix it?
TIA, Girish
>From the console:
[root@proxy05 asterisk-1.0.1]# asterisk -cvvv
== Parsing '/etc/asterisk/asterisk.conf': Found
== Parsing '/etc/asterisk/extconfig.conf': Found
Asterisk 1.0.1, Copyright (C) 1999-2004 Digium.
.
.
[chan_iax2.so] => (Inter Asterisk eXchange (Ver 2))
== Manager registered action IAXpeers
== Parsing '/etc/asterisk/iax.conf': Found
== Registered channel type 'IAX2' (Inter Asterisk eXchange Driver (Ver
2))
== Using TOS bits 16
== IAX Ready and Listening on 0.0.0.0 port 4569
Illegal instruction (core dumped)
Here's the trace:
(gdb) bt full
#0 0x402f2e1c in try_firmware (s=0xbfffdfd0
"/var/lib/asterisk/firmware/iax/iaxy.bin")
at chan_iax2.c:953
stbuf = {st_dev = 770, __pad1 = 0, st_ino = 1073945564, st_mode =
135379256,
st_nlink = 135379280,
st_uid = 3221217128, st_gid = 1073945564, st_rdev = 581449477212191056, __pad2
= 57192,
st_size = 1073905796,
st_blksize = 135379296, st_blocks = 0, st_atim = {tv_sec = 8, tv_nsec =
1073905676},
st_mtim = {tv_sec = 1075596704,
tv_nsec = 135379336}, st_ctim = {tv_sec = -1073750120, tv_nsec =
1075596704},
__unused4 = 135379256,
__unused5 = 135379347}
cur = (struct iax_firmware *) 0xbfffdfef
ifd = -1
fd = 25
res = -1073750033
fwh = (struct ast_iax2_firmware_header *) 0x0
fwh2 = {magic = 1818914, version = 0, devname
"\000\000x???>?\002@\223?\021\b??", datalen = 854033,
chksum = "\000\000\230?\021\b\000\000\000\000?-\034@\000", data =
0xbfffdf1a ""}
md5 = {buf = {3221217232, 3221217271, 3221217487, 3221217232}, bits
{3221217487, 0},
in = '\0' <repeats 16 times>,
"????\000\000\000\0008?\021\b\000\000\000\000\000\000\000\000?\001\000\000\r\000\000\000\002\000\000\000\001\000\000\000?????\006\000\0000\020\000"}
sum = "\001\200??????????????"
buf =
"\000\000\000\000E?\016@h???1\000\000\000\";\v@?#\001@6k\r\b",
'\0'
<repeats 12 times>,
"(????\200\016@P???\201?\f\b\002\000\000\000\000???`???\215\001\r\b",
'\0' <repeats 12 times>,
"\";\v@?\006\002@|X\034@\b???\000\000\000\0006k\r\b\022?\002@\000\000\000\000\000\000\000\0008???\022?\002@
X\034@\000\000\000\000(????\033s \000\000\000\000????????", '\0'
<repeats 12 times>,
"?X\033@", '\0' <repeats 18 times>, "u
\000\000\000\000\000\000\000\000?X\033@", '\0'
<repeats 18 times>...
len = -1073750232
chunk = -1073750064
s2 = 0xbfffd9d0 ""
last = 0xbfffdfef "iaxy.bin"
#1 0x402ee091 in reload_firmware () at chan_iax2.c:1156
cur = (struct iax_firmware *) 0x811b938
curl = (struct iax_firmware *) 0x811b993
curp = (struct iax_firmware *) 0xffffffff
fwd = (DIR *) 0x811b938
de = (struct dirent *) 0xbfffdfee
dir
"/var/lib/asterisk/firmware/iax\000@\020???\000\000\000\000?1\034@\001\000\000\000\b?\r\b@?\016\b\001\000\000\000\001\000\000\000`?\002@?1\034@????\000\000\000\000P\000\000\000?3\034@\000\000\000\000E?\016\b\000\000\000\000@?\016\b????P?\t\b?1\034@?1\034@@?\016\b\b?\r\b\033[1;30;40m
== \033[0;37;40m\000??R?\002@0X\034@\020\000\000\000
X\034@?M\034@3\000\000\---Type
<return> to continue, or q <return> to quit---
000s?\016\b????j?\002@@\227\016\b$?0@"...
fn
"/var/lib/asterisk/firmware/iax/iaxy.bin\000G\000\000\000??\020@\001\000\000\000\0000\001@G\000\000\000`.\034@\003P\000\b\000\000\000\000b\000\000\000j?\002@?1\034@\0000\001@X???2\236\020@?1\034@\0000\001@G\000\000\000\0000\001@?M\034@\237???x????M\034@G\000\000\000r?\016\bx????\235\020@?1\034@\0000\001@G\000\000\000j?\002@G\000\000\000?1\034@????R?\002@?1\034@\0000\001@G\000\000\000\0000\001@P???P\000\000\000"...
#2 0x402ed502 in load_module () at chan_iax2.c:7489
config = 0xbfffdfee "/iaxy.bin"
res = 0
x = 0
iabuf = "0.0.0.0\000x???G\200\002@"
reg = (struct iax2_registry *) 0x0
peer = (struct iax2_peer *) 0x0
sin = {sin_family = 2, sin_port = 55569, sin_addr = {s_addr = 0},
sin_zero "x????\033\003@"}
#3 0x08057608 in ast_load_resource (resource_name=0x8107bb3
"chan_iax2.so") at
loader.c:333
fn =
"/usr/lib/asterisk/modules/chan_iax2.so\000\000.so\000a.so",
'\0' <repeats
207 times>
errors = 0
res = -1073750034
m = (struct module *) 0x8118d98
flags = 0
val = 0xbfffdfee "/iaxy.bin"
key = 0x0
o = 135368088
cfg = (struct ast_config *) 0x0
tmp = "\033[33;40mInter Asterisk eXchange (Ver
2)\033[0;37;40m\000\000\000\205?\f\b\230???\001\000\000\000`?\002@?1\034@????\000\000\000"
#4 0x08057e1e in load_modules () at loader.c:428
mods = (DIR *) 0x81079b0
d = (struct dirent *) 0x0
x = 1
cfg = (struct ast_config *) 0x8106130
v = (struct ast_variable *) 0x0
tmp
"\033[1;37;40mchan_iax2.so\033[0;37;40m\000\00040m\000;40m\000\000?\004\000\000Ч\016\b\034\000\000\0008???\220\237\a\bЧ\016\b??\a\b?T\r\b\2009\r\b"
#5 0x0809b965 in main (argc=-1073748336, argv=0xbfffe580) at asterisk.c:1844
---Type <return> to continue, or q <return> to quit---
pw = (struct passwd *) 0xbfffe690
c = -1073750034
filename = "/root/.asterisk_history", '\0' <repeats
56 times>
hostname
"proxy05\000:;\v@?\022\005\b?l\000@\026y\000@\005\000\000\000\000\000\000\200
\000\000\000\000\016\002@\002", '\0' <repeats 15 times>,
"<????\006\002\001?;\v@`?\n@@c\n@?\006\002@\a\000\000\000?\t\002@",
'\0' <repeats 12
times>,
"\200&\001@?)\001@\216?w\001\220???\vm\000@%?\004\b\216?w\001??\004\b@????)\001@\005\000\000\0000\n\002@\000\000\000\000\001\000\000\000L???1?\000@?l\000@
\016\002@\001", '\0' <repeats 11 times>,
"@???>?\002@", '\0' <repeats 12 times>,
"????\000\000"... tmp
"`?\n@@c\n@?\006\002@\a\000\000\000?\t\002@\214\b\002@??Pc???r`????}\000@6?\004\b?\006\002@\vm\000@?\n\v@\202\211?\n`\231\n@????\200&\001@\000\000\000\000?\004\002"
xarg = 0x0
x = 110
f = (FILE *) 0xbfffe690
sigs = {__val = {134238211, 0 <repeats 31 times>}}
num = 1411395875
buf = 0xbfffe690 "\003P"
runuser = 0x0
rungroup = 0x3 <Address 0x3 out of bounds>
(gdb)
__________________________________
Do you Yahoo!?
Check out the new Yahoo! Front Page.
www.yahoo.com