[asterisk-dev] ooh323 Channel Segmentation Fault
Wilmar Campos
wilmar.campos at gmail.com
Sat Feb 25 08:25:49 MST 2006
Good morning,
I have installed asterisk 1.2.4, asterisk ooh323c-0.4, ooh323-8.1.
I have sveral CORE DUMPS, always on the same part:
#0 0x4002994f in pthread_mutex_trylock () from /lib/libpthread.so.0
No symbol table info available.
#1 0x40674565 in ast_mutex_trylock () from
/usr/lib/asterisk/modules/chan_ooh323.so
No symbol table info available.
#2 0x4066fcfd in onCallEstablished () from
/usr/lib/asterisk/modules/chan_ooh323.so
No symbol table info available.
#3 0x406855cc in ooOnSendMsg () from
/usr/lib/asterisk/modules/chan_ooh323.so
No symbol table info available.
#4 0x40684d5f in ooSendMsg () from /usr/lib/asterisk/modules/chan_ooh323.so
No symbol table info available.
#5 0x40683ea8 in ooProcessFDSETsAndTimers () from
/usr/lib/asterisk/modules/chan_ooh323.so
No symbol table info available.
#6 0x40684189 in ooMonitorChannels () from
/usr/lib/asterisk/modules/chan_ooh323.so
No symbol table info available.
#7 0x40674588 in ooh323c_stack_thread () from
/usr/lib/asterisk/modules/chan_ooh323.so
No symbol table info available.
#8 0x4002954e in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#9 0x401d5b8a in clone () from /lib/libc.so.6
No symbol table info available.
Can someone help me out with this?
I would like to try this code, in order to avoid the segmentation fault:
int onCallEstablished(ooCallData *call)
{
struct ooh323_pvt *p = NULL;
long num=0;
if(gH323Debug)
ast_verbose("--- onCallEstablished %s\n", call->callToken);
p = find_call(call);
if(!p) {
ast_log(LOG_ERROR, "Failed to find a matching call.\n");
return -1;
}
ast_mutex_lock(&p->lock);
if (!p->owner) {
ast_mutex_unlock(&p->lock);
ast_log(LOG_ERROR, "Channel has no owner\n");
return -1;
}
while(ast_mutex_trylock(&p->owner->lock))
{
ast_log(LOG_DEBUG,"Failed to grab lock, trying again\n");
ast_mutex_unlock(&p->lock);
usleep(1);
ast_mutex_lock(&p->lock);
num++;
if (num > 80000) {
ast_log(LOG_ERROR, "Waiting too long for channel lock\n");
return -1;
}
}
But i dont know if I am on the right path.....
Can someone help me out please.
Thanks,
Wilmar
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.digium.com/pipermail/asterisk-dev/attachments/20060225/32dd7f6b/attachment.htm
More information about the asterisk-dev
mailing list