Hello, I don't know if I have correctly added the onBeforeDestroy() because I see again the same bug today.
I have added onBeforeDestroy(); in AmSession just before destroy(); And I have also created the onBeforeDestroy(); in Amsession.h and Amsession.cpp but must be surcharged with the declaration in AmB2ABsession (from the patch). (11999) DEBUG: ~AmSipDialog (AmSipDialog.cpp:52): uac_trans.size() = 0 (11999) DEBUG: ~AmSipDialog (AmSipDialog.cpp:60): uas_trans.size() = 0 (11999) DEBUG: run (AmSessionContainer.cpp:114): Session cleaner finished (11999) DEBUG: conceal_loss (AmRtpAudio.cpp:182): default PLC (ts_diff = 160; s = 320) ==11999== ==11999== Thread 4: ==11999== Invalid read of size 4 ==11999== at 0x80A0030: AmMediaProcessorThread::processAudio(unsigned) (AmMediaProcessor.cpp:292) ==11999== by 0x80A07E7: AmMediaProcessorThread::run() (AmMediaProcessor.cpp:211) ==11999== by 0x80E0BFD: AmThread::_start(void*) (AmThread.cpp:70) ==11999== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) ==11999== by 0xB0724D: clone (in /lib/libc-2.5.so) ==11999== Address 0x71F1258 is 0 bytes inside a block of size 82,012 free'd ==11999== at 0x4004CF1: operator delete(void*) (vg_replace_malloc.c:244) ==11999== by 0x807D80F: AmB2ABCallerSession::~AmB2ABCallerSession() (AmB2ABSession.cpp:138) ==11999== by 0x4189DBA: ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) ==11999== by 0x80C9455: AmSessionContainer::run() (AmSessionContainer.cpp:91) ==11999== by 0x80E0BFD: AmThread::_start(void*) (AmThread.cpp:70) ==11999== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) ==11999== by 0xB0724D: clone (in /lib/libc-2.5.so) ==11999== ==11999== Invalid read of size 4 ==11999== at 0x8074574: AmAudio::put(unsigned, unsigned char*, unsigned) (AmAudio.cpp:317) ==11999== by 0x80A004B: AmMediaProcessorThread::processAudio(unsigned) (AmMediaProcessor.cpp:292) ==11999== by 0x80A07E7: AmMediaProcessorThread::run() (AmMediaProcessor.cpp:211) ==11999== by 0x80E0BFD: AmThread::_start(void*) (AmThread.cpp:70) ==11999== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) ==11999== by 0xB0724D: clone (in /lib/libc-2.5.so) ==11999== Address 0x71F1260 is 8 bytes inside a block of size 82,012 free'd ==11999== at 0x4004CF1: operator delete(void*) (vg_replace_malloc.c:244) ==11999== by 0x807D80F: AmB2ABCallerSession::~AmB2ABCallerSession() (AmB2ABSession.cpp:138) ==11999== by 0x4189DBA: ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) ==11999== by 0x80C9455: AmSessionContainer::run() (AmSessionContainer.cpp:91) ==11999== by 0x80E0BFD: AmThread::_start(void*) (AmThread.cpp:70) ==11999== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) ==11999== by 0xB0724D: clone (in /lib/libc-2.5.so) ==11999== ==11999== Invalid read of size 4 ==11999== at 0x8073DF7: DblBuffer::operator unsigned char*() (AmAudio.cpp:494) ==11999== by 0x80A004B: AmMediaProcessorThread::processAudio(unsigned) (AmMediaProcessor.cpp:292) ==11999== by 0x80A07E7: AmMediaProcessorThread::run() (AmMediaProcessor.cpp:211) ==11999== by 0x80E0BFD: AmThread::_start(void*) (AmThread.cpp:70) ==11999== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) ==11999== by 0xB0724D: clone (in /lib/libc-2.5.so) ==11999== Address 0x71F3264 is 8,204 bytes inside a block of size 82,012 free'd ==11999== at 0x4004CF1: operator delete(void*) (vg_replace_malloc.c:244) ==11999== by 0x807D80F: AmB2ABCallerSession::~AmB2ABCallerSession() (AmB2ABSession.cpp:138) ==11999== by 0x4189DBA: ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) ==11999== by 0x80C9455: AmSessionContainer::run() (AmSessionContainer.cpp:91) ==11999== by 0x80E0BFD: AmThread::_start(void*) (AmThread.cpp:70) ==11999== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) ==11999== by 0xB0724D: clone (in /lib/libc-2.5.so) ==11999== ==11999== Invalid write of size 1 ==11999== at 0x4006CC7: memcpy (mc_replace_strmem.c:406) ==11999== by 0x8074599: AmAudio::put(unsigned, unsigned char*, unsigned) (AmAudio.cpp:321) ==11999== by 0x80A004B: AmMediaProcessorThread::processAudio(unsigned) (AmMediaProcessor.cpp:292) ==11999== by 0x80A07E7: AmMediaProcessorThread::run() (AmMediaProcessor.cpp:211) ==11999== by 0x80E0BFD: AmThread::_start(void*) (AmThread.cpp:70) ==11999== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) ==11999== by 0xB0724D: clone (in /lib/libc-2.5.so) ==11999== Address 0x71F13A3 is 331 bytes inside a block of size 82,012 free'd ==11999== at 0x4004CF1: operator delete(void*) (vg_replace_malloc.c:244) ==11999== by 0x807D80F: AmB2ABCallerSession::~AmB2ABCallerSession() (AmB2ABSession.cpp:138) ==11999== by 0x4189DBA: ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) ==11999== by 0x80C9455: AmSessionContainer::run() (AmSessionContainer.cpp:91) ==11999== by 0x80E0BFD: AmThread::_start(void*) (AmThread.cpp:70) ==11999== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) ==11999== by 0xB0724D: clone (in /lib/libc-2.5.so) ==11999== ==11999== Invalid write of size 1 ==11999== at 0x4006CCD: memcpy (mc_replace_strmem.c:406) ==11999== by 0x8074599: AmAudio::put(unsigned, unsigned char*, unsigned) (AmAudio.cpp:321) ==11999== by 0x80A004B: AmMediaProcessorThread::processAudio(unsigned) (AmMediaProcessor.cpp:292) ==11999== by 0x80A07E7: AmMediaProcessorThread::run() (AmMediaProcessor.cpp:211) ==11999== by 0x80E0BFD: AmThread::_start(void*) (AmThread.cpp:70) ==11999== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) ==11999== by 0xB0724D: clone (in /lib/libc-2.5.so) ==11999== Address 0x71F13A2 is 330 bytes inside a block of size 82,012 free'd ==11999== at 0x4004CF1: operator delete(void*) (vg_replace_malloc.c:244) ==11999== by 0x807D80F: AmB2ABCallerSession::~AmB2ABCallerSession() (AmB2ABSession.cpp:138) ==11999== by 0x4189DBA: ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) ==11999== by 0x80C9455: AmSessionContainer::run() (AmSessionContainer.cpp:91) ==11999== by 0x80E0BFD: AmThread::_start(void*) (AmThread.cpp:70) ==11999== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) ==11999== by 0xB0724D: clone (in /lib/libc-2.5.so) ==11999== -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Laurent Schweizer Sent: jeudi 26 juin 2008 11:47 To: Stefan Sayer; Raphael Cc: Stefan Sayer; [email protected] Subject: Re: [Semsdev] Segmentation fault Thanks, I will try and send you a feedback. Just I send also an other problem about glitch in voice, did you remember ? Any idea ? Laurent -----Original Message----- From: Stefan Sayer [mailto:[EMAIL PROTECTED] Sent: mercredi 25 juin 2008 12:02 To: Raphael Cc: Laurent Schweizer; [email protected]; Stefan Sayer Subject: Re: [Semsdev] Segmentation fault Raphael wrote: > Hi Laurent, > > it looks like the patch i got from Stefan (which should be the same as > the one you got) is missing some pieces... > > Do you get the same results for following command? > > [EMAIL PROTECTED]:~/src/sems/trunk/core$ grep onBeforeDestroy * > AmB2ABSession.cpp:void AmB2ABCallerSession::onBeforeDestroy() { > AmB2ABSession.cpp:void AmB2ABCalleeSession::onBeforeDestroy() { > AmB2ABSession.h: void onBeforeDestroy(); > AmB2ABSession.h: void onBeforeDestroy(); > Binary file AmB2ABSession.o matches > > If yes, that means that we are missing the piece where onBeforeDestroy > gets called (probably from AmSession.cpp). Let's just ask Stefan for > some explainations. zut! sorry looks like i forgot to add that to the patchset. obviously onBeforeDestroy is another event handler that gets called before the session is destroyed (but in the session thread): onBeforeDestroy(); destroy(); // wait at least until session is out of RtpScheduler DBG("session is stopped.\n"); there it waits for the callee session to be released.. > > Cheers > Raphael. > > Laurent Schweizer wrote: >> Hello, >> >> I'm not 100 % sure that it's the same bug, but I run the same >> application with Valgrind : >> >> (12809) DEBUG: conceal_loss (AmRtpAudio.cpp:182): default PLC (ts_diff = >> 160; s = 320) >> (12809) DEBUG: conceal_loss (AmRtpAudio.cpp:182): default PLC (ts_diff = >> 160; s = 320) >> (12809) DEBUG: conceal_loss (AmRtpAudio.cpp:182): default PLC (ts_diff = >> 160; s = 320) >> (12809) DEBUG: run (AmSessionContainer.cpp:76): Session cleaner starting >> its work >> (12809) DEBUG: run (AmSessionContainer.cpp:90): session 0xafafb90 has >> been destroyed' >> (12809) DEBUG: ~AmSipDialog (AmSipDialog.cpp:50): callid = >> [EMAIL PROTECTED] >> (12809) DEBUG: ~AmSipDialog (AmSipDialog.cpp:51): local_tag = >> 196EA7C0-48610F86000B6B25-04DD5B90 >> (12809) DEBUG: ~AmSipDialog (AmSipDialog.cpp:52): uac_trans.size() = 0 >> (12809) DEBUG: conceal_loss (AmRtpAudio.cpp:182): default PLC (ts_diff = >> 160; s = 320) >> ==12809== >> ==12809== Thread 5: >> ==12809== Invalid read of size 4 >> ==12809== at 0x809FFE0: >> AmMediaProcessorThread::processAudio(unsigned) >> (AmMediaProcessor.cpp:292) >> ==12809== by 0x80A0797: AmMediaProcessorThread::run() >> (AmMediaProcessor.cpp:211) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== Address 0xBA77CA8 is 0 bytes inside a block of size 82,012 >> free'd >> ==12809== at 0x4004CF1: operator delete(void*) >> (vg_replace_malloc.c:244) >> ==12809== by 0x807D7DF: AmB2ABCallerSession::~AmB2ABCallerSession() >> (AmB2ABSession.cpp:138) >> ==12809== by 0x4181DBA: >> ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) >> ==12809== by 0x80C9405: AmSessionContainer::run() >> (AmSessionContainer.cpp:91) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== >> ==12809== Invalid read of size 4 >> ==12809== at 0x8074544: AmAudio::put(unsigned, unsigned char*, >> unsigned) (AmAudio.cpp:317) >> ==12809== by 0x809FFFB: >> AmMediaProcessorThread::processAudio(unsigned) >> (AmMediaProcessor.cpp:292) >> ==12809== by 0x80A0797: AmMediaProcessorThread::run() >> (AmMediaProcessor.cpp:211) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== Address 0xBA77CB0 is 8 bytes inside a block of size 82,012 >> free'd >> ==12809== at 0x4004CF1: operator delete(void*) >> (vg_replace_malloc.c:244) >> ==12809== by 0x807D7DF: AmB2ABCallerSession::~AmB2ABCallerSession() >> (AmB2ABSession.cpp:138) >> ==12809== by 0x4181DBA: >> ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) >> ==12809== by 0x80C9405: AmSessionContainer::run() >> (AmSessionContainer.cpp:91) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== >> ==12809== Invalid read of size 4 >> ==12809== at 0x8073DC7: DblBuffer::operator unsigned char*() >> (AmAudio.cpp:494) >> ==12809== by 0x809FFFB: >> AmMediaProcessorThread::processAudio(unsigned) >> (AmMediaProcessor.cpp:292) >> ==12809== by 0x80A0797: AmMediaProcessorThread::run() >> (AmMediaProcessor.cpp:211) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== Address 0xBA79CB4 is 8,204 bytes inside a block of size >> 82,012 free'd >> ==12809== at 0x4004CF1: operator delete(void*) >> (vg_replace_malloc.c:244) >> ==12809== by 0x807D7DF: AmB2ABCallerSession::~AmB2ABCallerSession() >> (AmB2ABSession.cpp:138) >> ==12809== by 0x4181DBA: >> ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) >> ==12809== by 0x80C9405: AmSessionContainer::run() >> (AmSessionContainer.cpp:91) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== >> ==12809== Invalid write of size 1 >> ==12809== at 0x4006CC7: memcpy (mc_replace_strmem.c:406) >> ==12809== by 0x8074569: AmAudio::put(unsigned, unsigned char*, >> unsigned) (AmAudio.cpp:321) >> ==12809== by 0x809FFFB: >> AmMediaProcessorThread::processAudio(unsigned) >> (AmMediaProcessor.cpp:292) >> ==12809== by 0x80A0797: AmMediaProcessorThread::run() >> (AmMediaProcessor.cpp:211) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== Address 0xBA77DF3 is 331 bytes inside a block of size 82,012 >> free'd >> ==12809== at 0x4004CF1: operator delete(void*) >> (vg_replace_malloc.c:244) >> ==12809== by 0x807D7DF: AmB2ABCallerSession::~AmB2ABCallerSession() >> (AmB2ABSession.cpp:138) >> ==12809== by 0x4181DBA: >> ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) >> ==12809== by 0x80C9405: AmSessionContainer::run() >> (AmSessionContainer.cpp:91) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== >> ==12809== Invalid write of size 1 >> ==12809== at 0x4006CCD: memcpy (mc_replace_strmem.c:406) >> ==12809== by 0x8074569: AmAudio::put(unsigned, unsigned char*, >> unsigned) (AmAudio.cpp:321) >> ==12809== by 0x809FFFB: >> AmMediaProcessorThread::processAudio(unsigned) >> (AmMediaProcessor.cpp:292) >> ==12809== by 0x80A0797: AmMediaProcessorThread::run() >> (AmMediaProcessor.cpp:211) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== Address 0xBA77DF2 is 330 bytes inside a block of size 82,012 >> free'd >> ==12809== at 0x4004CF1: operator delete(void*) >> (vg_replace_malloc.c:244) >> ==12809== by 0x807D7DF: AmB2ABCallerSession::~AmB2ABCallerSession() >> (AmB2ABSession.cpp:138) >> ==12809== by 0x4181DBA: >> ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) >> ==12809== by 0x80C9405: AmSessionContainer::run() >> (AmSessionContainer.cpp:91) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== >> ==12809== Invalid write of size 1 >> ==12809== at 0x4006CD4: memcpy (mc_replace_strmem.c:406) >> ==12809== by 0x8074569: AmAudio::put(unsigned, unsigned char*, >> unsigned) (AmAudio.cpp:321) >> ==12809== by 0x809FFFB: >> AmMediaProcessorThread::processAudio(unsigned) >> (AmMediaProcessor.cpp:292) >> ==12809== by 0x80A0797: AmMediaProcessorThread::run() >> (AmMediaProcessor.cpp:211) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== Address 0xBA77DF1 is 329 bytes inside a block of size 82,012 >> free'd >> ==12809== at 0x4004CF1: operator delete(void*) >> (vg_replace_malloc.c:244) >> ==12809== by 0x807D7DF: AmB2ABCallerSession::~AmB2ABCallerSession() >> (AmB2ABSession.cpp:138) >> ==12809== by 0x4181DBA: >> ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) >> ==12809== by 0x80C9405: AmSessionContainer::run() >> (AmSessionContainer.cpp:91) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== >> ==12809== Invalid write of size 1 >> ==12809== at 0x4006CDE: memcpy (mc_replace_strmem.c:406) >> ==12809== by 0x8074569: AmAudio::put(unsigned, unsigned char*, >> unsigned) (AmAudio.cpp:321) >> ==12809== by 0x809FFFB: >> AmMediaProcessorThread::processAudio(unsigned) >> (AmMediaProcessor.cpp:292) >> ==12809== by 0x80A0797: AmMediaProcessorThread::run() >> (AmMediaProcessor.cpp:211) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== Address 0xBA77DF0 is 328 bytes inside a block of size 82,012 >> free'd >> ==12809== at 0x4004CF1: operator delete(void*) >> (vg_replace_malloc.c:244) >> ==12809== by 0x807D7DF: AmB2ABCallerSession::~AmB2ABCallerSession() >> (AmB2ABSession.cpp:138) >> ==12809== by 0x4181DBA: >> ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) >> ==12809== by 0x80C9405: AmSessionContainer::run() >> (AmSessionContainer.cpp:91) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== >> ==12809== Invalid read of size 4 >> ==12809== at 0x8074462: AmAudio::encode(unsigned) (memory:286) >> ==12809== by 0x8074575: AmAudio::put(unsigned, unsigned char*, >> unsigned) (AmAudio.cpp:323) >> ==12809== by 0x809FFFB: >> AmMediaProcessorThread::processAudio(unsigned) >> (AmMediaProcessor.cpp:292) >> ==12809== by 0x80A0797: AmMediaProcessorThread::run() >> (AmMediaProcessor.cpp:211) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== Address 0xBA79CB8 is 8,208 bytes inside a block of size >> 82,012 free'd >> ==12809== at 0x4004CF1: operator delete(void*) >> (vg_replace_malloc.c:244) >> ==12809== by 0x807D7DF: AmB2ABCallerSession::~AmB2ABCallerSession() >> (AmB2ABSession.cpp:138) >> ==12809== by 0x4181DBA: >> ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) >> ==12809== by 0x80C9405: AmSessionContainer::run() >> (AmSessionContainer.cpp:91) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== >> ==12809== Invalid read of size 4 >> ==12809== at 0x8074473: AmAudio::encode(unsigned) (AmAudio.cpp:385) >> ==12809== by 0x8074575: AmAudio::put(unsigned, unsigned char*, >> unsigned) (AmAudio.cpp:323) >> ==12809== by 0x809FFFB: >> AmMediaProcessorThread::processAudio(unsigned) >> (AmMediaProcessor.cpp:292) >> ==12809== by 0x80A0797: AmMediaProcessorThread::run() >> (AmMediaProcessor.cpp:211) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== Address 0x52401B8 is 0 bytes inside a block of size 40 free'd >> ==12809== at 0x4004CF1: operator delete(void*) >> (vg_replace_malloc.c:244) >> ==12809== by 0x8077154: AmAudioSimpleFormat::~AmAudioSimpleFormat() >> (AmAudio.h:159) >> ==12809== by 0x80742C1: AmAudio::~AmAudio() (memory:259) >> ==12809== by 0x807A247: AmAudioDelayBridge::~AmAudioDelayBridge() >> (AmB2ABSession.cpp:438) >> ==12809== by 0x807D7CF: AmB2ABCallerSession::~AmB2ABCallerSession() >> (AmB2ABSession.h:293) >> ==12809== by 0x4181DBA: >> ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) >> ==12809== by 0x80C9405: AmSessionContainer::run() >> (AmSessionContainer.cpp:91) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== >> ==12809== Invalid read of size 4 >> ==12809== at 0x80757DD: AmAudioFormat::getCodec() (AmAudio.cpp:234) >> ==12809== by 0x807447A: AmAudio::encode(unsigned) (AmAudio.cpp:385) >> ==12809== by 0x8074575: AmAudio::put(unsigned, unsigned char*, >> unsigned) (AmAudio.cpp:323) >> ==12809== by 0x809FFFB: >> AmMediaProcessorThread::processAudio(unsigned) >> (AmMediaProcessor.cpp:292) >> ==12809== by 0x80A0797: AmMediaProcessorThread::run() >> (AmMediaProcessor.cpp:211) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== Address 0x52401D4 is 28 bytes inside a block of size 40 >> free'd >> ==12809== at 0x4004CF1: operator delete(void*) >> (vg_replace_malloc.c:244) >> ==12809== by 0x8077154: AmAudioSimpleFormat::~AmAudioSimpleFormat() >> (AmAudio.h:159) >> ==12809== by 0x80742C1: AmAudio::~AmAudio() (memory:259) >> ==12809== by 0x807A247: AmAudioDelayBridge::~AmAudioDelayBridge() >> (AmB2ABSession.cpp:438) >> ==12809== by 0x807D7CF: AmB2ABCallerSession::~AmB2ABCallerSession() >> (AmB2ABSession.h:293) >> ==12809== by 0x4181DBA: >> ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) >> ==12809== by 0x80C9405: AmSessionContainer::run() >> (AmSessionContainer.cpp:91) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== >> ==12809== Invalid read of size 4 >> ==12809== at 0x80757F4: AmAudioFormat::getCodec() (AmAudio.cpp:235) >> ==12809== by 0x807447A: AmAudio::encode(unsigned) (AmAudio.cpp:385) >> ==12809== by 0x8074575: AmAudio::put(unsigned, unsigned char*, >> unsigned) (AmAudio.cpp:323) >> ==12809== by 0x809FFFB: >> AmMediaProcessorThread::processAudio(unsigned) >> (AmMediaProcessor.cpp:292) >> ==12809== by 0x80A0797: AmMediaProcessorThread::run() >> (AmMediaProcessor.cpp:211) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> ==12809== Address 0x52401B8 is 0 bytes inside a block of size 40 free'd >> ==12809== at 0x4004CF1: operator delete(void*) >> (vg_replace_malloc.c:244) >> ==12809== by 0x8077154: AmAudioSimpleFormat::~AmAudioSimpleFormat() >> (AmAudio.h:159) >> ==12809== by 0x80742C1: AmAudio::~AmAudio() (memory:259) >> ==12809== by 0x807A247: AmAudioDelayBridge::~AmAudioDelayBridge() >> (AmB2ABSession.cpp:438) >> ==12809== by 0x807D7CF: AmB2ABCallerSession::~AmB2ABCallerSession() >> (AmB2ABSession.h:293) >> ==12809== by 0x4181DBA: >> ServiceLineCallerDialog::~ServiceLineCallerDialog() (ServiceLine.h:96) >> ==12809== by 0x80C9405: AmSessionContainer::run() >> (AmSessionContainer.cpp:91) >> ==12809== by 0x80E0A9D: AmThread::_start(void*) (AmThread.cpp:70) >> ==12809== by 0xBAF45A: start_thread (in /lib/libpthread-2.5.so) >> ==12809== by 0xB0724D: clone (in /lib/libc-2.5.so) >> pure virtual method called >> (12809) DEBUG: ~AmSipDialog (AmSipDialog.cpp:60): (12809) DEBUG: >> conceal_loss (AmRtpAudio.cpp:182): default PLC (ts_diff = 160; s = 320) >> terminate called without an active exception >> uas_trans.size() = 0 >> (12809) DEBUG: run (AmSessionContainer.cpp:114): Session cleaner >> finished >> ==12809== >> >> -----Original Message----- >> From: Raphael Coeffic [mailto:[EMAIL PROTECTED] >> Sent: lundi 23 juin 2008 18:54 >> To: Laurent Schweizer >> Cc: [EMAIL PROTECTED] >> Subject: Re: [Semsdev] Segmentation fault >> >> Laurent Schweizer wrote: >> >>> Hello, >>> >>> Any news ? >>> >>> >>> >> Hi Laurent, >> >> sorry for the long delay... i just forgot your issue (shame on me!!!). >> Now, the trouble is that i realized that the core dump alone wouldn't >> help me much, as it has to be loaded in GDB with exact the same program >> binaries >> and exact the same source... >> >> Anyhow, i think it would be much better to trace this with Valgrind. Is >> it crashing often enough that you could reproduce it easely? If yes, we >> should try to let it run within Valgrind. This way, we will know where >> the pointer causing the seg fault is coming from... >> >> >> -Raphael. >> >>> How can I debug this ? >>> >>> Laurent >>> >>> -----Original Message----- >>> From: Laurent Schweizer >>> Sent: vendredi 20 juin 2008 11:50 >>> To: 'Raphael Coeffic' >>> Cc: [EMAIL PROTECTED] >>> Subject: RE: [Semsdev] Segmentation fault >>> >>> Link to the core dump >>> >>> http://download.yousendit.com/064E011638295CD9 >>> >>> >>> -----Original Message----- >>> From: Raphael Coeffic [mailto:[EMAIL PROTECTED] >>> Sent: vendredi 20 juin 2008 11:00 >>> To: Laurent Schweizer >>> Cc: [EMAIL PROTECTED] >>> Subject: Re: [Semsdev] Segmentation fault >>> >>> >>> Laurent Schweizer wrote: >>> >>> >>>> Hello, >>>> >>>> Again the same segmentation fault today! >>>> >>>> What can I do ? >>>> >>>> >>>> >>>> >>> Can you please send me the core dump? >>> >>> -Raphael. >>> >>> >>> >>>> Thanks >>>> Laurent >>>> >>>> Core was generated by `./core/sems -f sems.config.standalone'. >>>> Program terminated with signal 11, Segmentation fault. >>>> #0 0x0809fff9 in AmMediaProcessorThread::processAudio >>>> >>>> >>> (this=0x84388a8, >>> >>> >>>> ts=34167920) at AmMediaProcessor.cpp:292 >>>> 292 int ret = input->put(ts,buffer,got_audio); >>>> (gdb) >>>> (gdb) >>>> (gdb) bt >>>> #0 0x0809fff9 in AmMediaProcessorThread::processAudio >>>> >>>> >>> (this=0x84388a8, >>> >>> >>>> ts=34167920) at AmMediaProcessor.cpp:292 >>>> #1 0x080a0798 in AmMediaProcessorThread::run (this=0x84388a8) at >>>> AmMediaProcessor.cpp:211 >>>> #2 0x080e0a9e in AmThread::_start (_t=0x84388a8) at AmThread.cpp:70 >>>> #3 0x00baf45b in start_thread () from /lib/libpthread.so.0 >>>> #4 0x001de24e in clone () from /lib/libc.so.6 >>>> >>>> >>>> >>>> >>>> -----Original Message----- >>>> From: [EMAIL PROTECTED] >>>> [mailto:[EMAIL PROTECTED] On Behalf Of Laurent >>>> >>>> >>> Schweizer >>> >>> >>>> Sent: jeudi 19 juin 2008 09:52 >>>> To: [EMAIL PROTECTED] >>>> Subject: Re: [Semsdev] Segmentation fault >>>> >>>> I forget to indicate that I use the patch >>>> b2absession_caller_owns_connector of Stefan. >>>> >>>> Laurent >>>> >>>> -----Original Message----- >>>> From: [EMAIL PROTECTED] >>>> [mailto:[EMAIL PROTECTED] On Behalf Of Laurent >>>> >>>> >>> Schweizer >>> >>> >>>> Sent: jeudi 19 juin 2008 09:36 >>>> To: [EMAIL PROTECTED] >>>> Subject: [Semsdev] Segmentation fault >>>> >>>> Hello all, >>>> >>>> I use sems trunk version and I have this segmentation fault. >>>> >>>> #0 0x00b76523 in main_arena () from /lib/libc.so.6 >>>> (gdb) bt >>>> #0 0x00b76523 in main_arena () from /lib/libc.so.6 >>>> #1 0x0809fffc in AmMediaProcessorThread::processAudio >>>> >>>> >>> (this=0x94be8a8, >>> >>> >>>> ts=37259040) at AmMediaProcessor.cpp:292 >>>> #2 0x080a0798 in AmMediaProcessorThread::run (this=0x94be8a8) at >>>> AmMediaProcessor.cpp:211 >>>> #3 0x080e0a9e in AmThread::_start (_t=0x94be8a8) at AmThread.cpp:70 >>>> #4 0x00baf45b in start_thread () from /lib/libpthread.so.0 >>>> #5 0x00b0724e in clone () from /lib/libc.so.6 >>>> (gdb) >>>> >>>> Regards >>>> >>>> Laurent >>>> _______________________________________________ >>>> Semsdev mailing list >>>> [email protected] >>>> http://lists.iptel.org/mailman/listinfo/semsdev >>>> _______________________________________________ >>>> Semsdev mailing list >>>> [email protected] >>>> http://lists.iptel.org/mailman/listinfo/semsdev >>>> _______________________________________________ >>>> Semsdev mailing list >>>> [email protected] >>>> http://lists.iptel.org/mailman/listinfo/semsdev >>>> >>>> >>>> > > _______________________________________________ Semsdev mailing list [email protected] http://lists.iptel.org/mailman/listinfo/semsdev _______________________________________________ Semsdev mailing list [email protected] http://lists.iptel.org/mailman/listinfo/semsdev
