[Home]

Summary:ASTERISK-17938: [patch] Segmentation faults
Reporter:Kenneth Van Velthoven (kvveltho)Labels:
Date Opened:2011-05-28 05:04:44Date Closed:2012-01-28 11:53:07.000-0600
Priority:CriticalRegression?No
Status:Closed/CompleteComponents:Core/PBX
Versions:1.8.4 Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) gdb1.txt
( 1) gdb2.txt
( 2) isup.c
Description:Daily random crashed with segmentation fault.

****** STEPS TO REPRODUCE ******

Unable to reproduce

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

Compiled with DONT_OPTIMIZE.   Let we know if additional info is needed.
We have a brand new server,  so HW problem is not a possible cause.
Comments:By: Kenneth Van Velthoven (kvveltho) 2011-05-31 02:37:31

Anyone has an idea why it is crashing?   We have 4-5 crashes a day.

By: Walter Doekes (wdoekes) 2011-05-31 07:03:34

Could you paste the surroundings of line 2180 of isup.c? Which version is that? Do you see why it crashes on that line? In http://svn.digium.com/svn/libss7/branches/1.0/isup.c I don't see how it could crash with cur==0x0 in that function.

By: Kenneth Van Velthoven (kvveltho) 2011-05-31 07:09:06

I use libss7 version downloaded from digium site:
http://downloads.asterisk.org/pub/telephony/libss7/libss7-1.0.2.tar.gz

I cannot see why it crashes.

I've attached isup.c

By: Walter Doekes (wdoekes) 2011-05-31 07:27:57

Oh wait, I misread. Cur was 0x10. In that case it's clear what it crashes on.

You should probably print what *ss7 holds if you still have the dump.

By: Kenneth Van Velthoven (kvveltho) 2011-05-31 07:29:22

I can post additional gdb dump files if it could help you trace the problem.
Let me know if addtional info is needed.

Thanks.

By: Kenneth Van Velthoven (kvveltho) 2011-05-31 07:30:48

How do I do this:
You should probably print what *ss7 holds if you still have the dump.
?

How can we solve it?

By: Kenneth Van Velthoven (kvveltho) 2011-05-31 07:41:53

Is this what you need?

#0  0x00002aaac19628bf in isup_find_call (ss7=0x2aaaac0417a0, rl=0x41641970, cic=546) at isup.c:2180
2180                    if ((cur->cic == cic) && (cur->dpc == rl->opc)) {


In other dumps I see this:

Program terminated with signal 11, Segmentation fault.
#0  0x000000000049c9d8 in ast_datastore_free (datastore=0x1160b7d0) at datastore.c:66
66              if (datastore->info->destroy != NULL && datastore->data != NULL) {


Program terminated with signal 11, Segmentation fault.
#0  0x0000003d1e032abd in getenv () from /lib64/libc.so.6

By: Michael L. Young (elguero) 2011-06-30 21:54:27.989-0500

Not sure if this is related or not, ASTERISK-17917, in regards to the ast_datastore_free segfault mentioned in your last comment.

By: Matt Jordan (mjordan) 2011-12-19 09:02:55.435-0600

Can you test with the lastest from the 1.8 branch (1.8.8) and see if that resolves this issue?  It appears to be similar to ASTERISK-17917.

By: Paul Belanger (pabelanger) 2012-01-28 11:52:57.929-0600

Suspended due to lack of activity. Please request a bug marshal in #asterisk-bugs on the IRC network irc.freenode.net to reopen the issue should you have the additional information requested.  Further information can be found at http://www.asterisk.org/developers/bug-guidelines