[Asterisk-Dev] Asterisk segmentation fault on MPC8260

artemisio.palagotti artemisio.palagotti at libero.it
Wed Nov 17 09:55:39 MST 2004


Hi,
I've tried with a PPC board (Motorola MPC8260) with 128MB of RAM, but I have the same problem: Asterisk crash with calls from unregister user (became zombie). I'm afraid the problem is the unrecognized kernel signal (signal 32 and 33). It could be a libc problems (I'm using ELDK tools with glibc-3.2.1) or kernel problems (I'm using ELDK kernel 2.4.24). Any idea ? Help me ...

Regards,
Arty.

---------- Initial Header -----------

>From      : "Alex Zeffertt" ajz at cambridgebroadband.com
To          : "artemisio.palagotti" artemisio.palagotti at libero.it
Cc          : 
Date      : Wed, 17 Nov 2004 09:48:28 +0000
Subject : Re: [Asterisk-Dev] Asterisk segmentation fault on MPC8260

> Hi,
> 
> I think the problem is that they are unknown signals.  On my mpc860
> system:
> 
> 
> 
> ~ # kill -l | { i=0; while read a ; do echo $i $a ; i=`expr 1 + $i`;
> done ; } 0 0
> 1 SIGHUP
> 2 SIGINT
> 3 SIGQUIT
> 4 SIGILL
> 5 SIGTRAP
> 6 SIGABRT
> 7 SIGBUS
> 8 SIGFPE
> 9 SIGKILL
> 10 SIGUSR1
> 11 SIGSEGV
> 12 SIGUSR2
> 13 SIGPIPE
> 14 SIGALRM
> 15 SIGTERM
> 16 SIGSTKFLT
> 17 SIGCHLD
> 18 SIGCONT
> 19 SIGSTOP
> 20 SIGTSTP
> 21 SIGTTIN
> 22 SIGTTOU
> 23 SIGURG
> 24 SIGXCPU
> 25 SIGXFSZ
> 26 SIGVTALRM
> 27 SIGPROF
> 28 SIGWINCH
> 29 SIGIO
> 30 SIGPWR
> 31 SIGSYS
> 
> However, on my x86 system one of the signals *is* defined:
> 
> [ajz at zambia ajz]$ kill -l
>  1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL
>  5) SIGTRAP      6) SIGABRT      7) SIGBUS       8) SIGFPE
>  9) SIGKILL     10) SIGUSR1     11) SIGSEGV     12) SIGUSR2
> 13) SIGPIPE     14) SIGALRM     15) SIGTERM     17) SIGCHLD
> 18) SIGCONT     19) SIGSTOP     20) SIGTSTP     21) SIGTTIN
> 22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ
> 26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO
> 30) SIGPWR      31) SIGSYS      33) SIGRTMIN    34) SIGRTMIN+1
> 35) SIGRTMIN+2  36) SIGRTMIN+3  37) SIGRTMIN+4  38) SIGRTMIN+5
> 39) SIGRTMIN+6  40) SIGRTMIN+7  41) SIGRTMIN+8  42) SIGRTMIN+9
> 43) SIGRTMIN+10 44) SIGRTMIN+11 45) SIGRTMIN+12 46) SIGRTMIN+13
> 47) SIGRTMIN+14 48) SIGRTMIN+15 49) SIGRTMAX-14 50) SIGRTMAX-13
> 51) SIGRTMAX-12 52) SIGRTMAX-11 53) SIGRTMAX-10 54) SIGRTMAX-9
> 55) SIGRTMAX-8  56) SIGRTMAX-7  57) SIGRTMAX-6  58) SIGRTMAX-5
> 59) SIGRTMAX-4  60) SIGRTMAX-3  61) SIGRTMAX-2  62) SIGRTMAX-1
> 63) SIGRTMAX
> 
> 
> I think it might well be a memory problem.  On my x86 an asterisk doing
> nothing has the following status:
> 
> [ajz at zambia rc.d]$ cat /proc/`pidof asterisk`/status 
> Name:   asterisk
> State:  S (sleeping)
> Tgid:   19839
> Pid:    19839
> PPid:   1
> TracerPid:      0
> Uid:    0       0       0       0
> Gid:    0       0       0       0
> FDSize: 32
> Groups: 0 1 2 3 4 6 10 4003 4001 
> VmSize:    39676 kB
> VmLck:         0 kB
> VmRSS:      5780 kB
> VmData:    31776 kB
> VmStk:        32 kB
> VmExe:       612 kB
> VmLib:      6312 kB
> SigPnd: 0000000000000000
> SigBlk: 0000000100000000
> SigIgn: 8000000000001000
> SigCgt: 0000000081414003
> CapInh: 0000000000000000
> CapPrm: 00000000fffffeff
> CapEff: 00000000fffffeff
> 
> Looking at the Virtual memory stats I'd say you need quite a bit more
> than 32MB.
> 
> If you do however manage to get it running on a 32MB PPC system I would
> be very appreciative if you could provide an overview of what you did on
> the http://www.voip-info.org wiki.
> 
> HTH,
> 
> Alex
> 
> 
> 
> 
> 
> 
> 
> On Wed, 17 Nov 2004 09:45:01 +0100
> "artemisio.palagotti" <artemisio.palagotti at libero.it> wrote:
> 
> > > Hi all, 
> > > I've cross-compiled Asterisk for a board with Motorola MPC8260 using
> > > ELDK
> > tools from 
> > > www.denx.de. I'm using Asterisk 1.0.0 and SIP protocol. The board
> > > has 32MB of
> > RAM and 16MB 
> > > of FLASH. 
> > > When asterisk starts there are 2MBytes free (see with top). All
> > > works fine but
> > there is a sequence 
> > > of operation that generate a segmentetion fault for Asterisk (see
> > > with strace
> > -p <asterisk pid>). 
> > > This condition appears only if a registered SIP user make a call to
> > > another
> > user present in sip.conf 
> > > file but not register to Asterisk. After this condition the first
> > > child
> > Asterisk process becames 
> > > zombie (see with ps -ax command). Has anyone any idea ? 
> > 
> > I've trace my problem with STRACE. I make a SIP call with kphone at
> > number 99999. This user is present in the sip.conf file but it isn't
> > registered. After 3 call at this number and making 'stop now' command
> > the process 1525 become zombie. This is the trace. Asterisk start with
> > PID 1522:
> > 
> > process PID 1522:
> > 
> > clone(child_stack=0x30226bd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1523
> > --- SIGRT_1 (Unknown signal 33) ---
> > wait4(-1, [WIFEXITED(s) && WEXITSTATUS(s) == 0], WNOHANG|__WCLONE,
> > NULL) = 1523 wait4(-1, 0x100c5e98, WNOHANG|__WCLONE, NULL) = -1 ECHILD
> > (No child processes) exit(0) 
> > 
> > process PID 1523:
> > 
> > --- SIGRT_0 (Unknown signal 32) ---
> > exit(0)                                 = ?
> > 
> > process PID 1524
> > 
> > clone(child_stack=0x100c6010,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND)= 1525
> > 
> > process PID 1525
> > 
> > clone(child_stack=0x30226bd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1526
> > clone(child_stack=0x30427bd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1527
> > clone(child_stack=0x30628bd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1528
> > clone(child_stack=0x30829bd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1529
> > clone(child_stack=0x30a2abd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1530
> > clone(child_stack=0x30c2bbd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1531
> > clone(child_stack=0x30e2cbd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1532
> > clone(child_stack=0x3102dbd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1533
> > clone(child_stack=0x3122ebd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1534
> > clone(child_stack=0x3142fbd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1535
> > clone(child_stack=0x31630bd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1536
> > clone(child_stack=0x31831bd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1537
> > clone(child_stack=0x31a32bd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1538
> > clone(child_stack=0x31c33bd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1539
> > clone(child_stack=0x31e34bd0,
> > flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|0x21) = 1548
> > --- SIGRT_1 (Unknown signal 33) ---
> > wait4(-1, [WIFSIGNALED(s) && WTERMSIG(s) == SIGSEGV],
> > WNOHANG|__WCLONE, NULL) = 1539
> > 
> > What are the unknown signal 32 and 33 ? Is it a memory problem (32MB
> > of SDRAM) ? Has anyone any idea ?
> > 
> > Regards,
> > Arty.
> > 
> > 
> > 
> > 
> > 
> > ---------- Initial Header -----------
> > 
> > From      : asterisk-dev-bounces at lists.digium.com
> > To          : "asterisk-dev" asterisk-dev at lists.digium.com
> > Cc          : 
> > Date      : Thu, 11 Nov 2004 16:37:56 +0100
> > Subject : [Asterisk-Dev] Asterisk segmentation fault on MPC8260
> > 
> > > Hi all, 
> > > I've cross-compiled Asterisk for a board with Motorola MPC8260 using
> > > ELDK
> > tools from 
> > > www.denx.de. I'm using Asterisk 1.0.0 and SIP protocol. The board
> > > has 32MB of
> > RAM and 16MB 
> > > of FLASH. 
> > > When asterisk starts there are 2MBytes free (see with top). All
> > > works fine but
> > there is a sequence 
> > > of operation that generate a segmentetion fault for Asterisk (see
> > > with strace
> > -p <asterisk pid>). 
> > > This condition appears only if a registered SIP user make a call to
> > > another
> > user present in sip.conf 
> > > file but not register to Asterisk. After this condition the first
> > > child
> > Asterisk process becames 
> > > zombie (see with ps -ax command). Has anyone any idea ? 
> > >  
> > > Regards, 
> > > Arty. 
> > > 
> > > 
> > > 
> > > ____________________________________________________________
> > > Libero ADSL: navighi gratis a 1.2 Mega, senza canone e costi di
> > > attivazione. Abbonati subito su http://www.libero.it 
> > > 
> > > 
> > > _______________________________________________
> > > Asterisk-Dev mailing list
> > > Asterisk-Dev at lists.digium.com
> > > http://lists.digium.com/mailman/listinfo/asterisk-dev
> > > To UNSUBSCRIBE or update options visit:
> > >    http://lists.digium.com/mailman/listinfo/asterisk-dev
> > > 
> > 
> > 
> > 
> > ____________________________________________________________
> > Libero ADSL: navighi gratis a 1.2 Mega, senza canone e costi di
> > attivazione. Abbonati subito su http://www.libero.it 
> > 
> > 
> > _______________________________________________
> > Asterisk-Dev mailing list
> > Asterisk-Dev at lists.digium.com
> > http://lists.digium.com/mailman/listinfo/asterisk-dev
> > To UNSUBSCRIBE or update options visit:
> >    http://lists.digium.com/mailman/listinfo/asterisk-dev
> 



____________________________________________________________
Libero ADSL: navighi gratis a 1.2 Mega, senza canone e costi di attivazione. 
Abbonati subito su http://www.libero.it 





More information about the asterisk-dev mailing list