My favorites | Sign in
Logo
                
Details: Show all Hide all

Yesterday

  • 28 hours ago
    r1353 (Fixed speech complete event processing (generation) in Flite...) committed by achaloyan   -   Fixed speech complete event processing (generation) in Flite plugin. Actually MEDIA_FRAME_TYPE_EVENT is used there to indicate speech complete event, it's not a typical named event, so it should not be passed further to RTP stack.
    Fixed speech complete event processing (generation) in Flite plugin. Actually MEDIA_FRAME_TYPE_EVENT is used there to indicate speech complete event, it's not a typical named event, so it should not be passed further to RTP stack.
  • 28 hours ago
    r1352 (Fixed seg fault while processing dummy named event (out of b...) committed by achaloyan   -   Fixed seg fault while processing dummy named event (out of band DTMF packet) in jitter buffer
    Fixed seg fault while processing dummy named event (out of band DTMF packet) in jitter buffer

Last 30 days

  • Dec 09, 2009
    issue 54 (Asterisk crashes when res_speech_unimrcp.so is loaded automa...) changed by achaloyan   -   So I assume, this issue has been fixed with issue-53
    Status: Fixed
    Owner: achaloyan
    Labels: Type-Defect Priority-Medium OpSys-Linux Component-Asterisk
    So I assume, this issue has been fixed with issue-53
    Status: Fixed
    Owner: achaloyan
    Labels: Type-Defect Priority-Medium OpSys-Linux Component-Asterisk
  • Dec 08, 2009
    r1351 (Fixed compilation warnings for x64 platform (apr_size_t is 6...) committed by achaloyan   -   Fixed compilation warnings for x64 platform (apr_size_t is 64 bit integer there)
    Fixed compilation warnings for x64 platform (apr_size_t is 64 bit integer there)
  • Dec 08, 2009
    r1350 (Using /Zi option instead of /ZI, which is not supported for ...) committed by achaloyan   -   Using /Zi option instead of /ZI, which is not supported for x64 platform
    Using /Zi option instead of /ZI, which is not supported for x64 platform
  • Dec 08, 2009
    r1349 (Added svn:ignore props for x64) committed by achaloyan   -   Added svn:ignore props for x64
    Added svn:ignore props for x64
  • Dec 07, 2009
    r1348 (Initially added x64 platform related configuration to vs pro...) committed by achaloyan   -   Initially added x64 platform related configuration to vs property sheets and project files
    Initially added x64 platform related configuration to vs property sheets and project files
  • Dec 07, 2009
    r1347 (Set a few more recog header fields (just a demo)) committed by achaloyan   -   Set a few more recog header fields (just a demo)
    Set a few more recog header fields (just a demo)
  • Dec 07, 2009
    r1346 (Introduced bin, lib and plugin property sheets, updated othe...) committed by achaloyan   -   Introduced bin, lib and plugin property sheets, updated other property sheets and project files according. Everything should work as is. The only actual change is in output directory for static libs. Now they are in $(SolutionDir)$(ConfigurationName)\lib directory. The next will be support for 64 bit properties and configuration.
    Introduced bin, lib and plugin property sheets, updated other property sheets and project files according. Everything should work as is. The only actual change is in output directory for static libs. Now they are in $(SolutionDir)$(ConfigurationName)\lib directory. The next will be support for 64 bit properties and configuration.
  • Dec 05, 2009
    r1345 (Using portable APR_SIZE_T_FMT to print, trace apr_size_t val...) committed by achaloyan   -   Using portable APR_SIZE_T_FMT to print, trace apr_size_t values to fix compilation warnings under 64-bit compiler
    Using portable APR_SIZE_T_FMT to print, trace apr_size_t values to fix compilation warnings under 64-bit compiler
  • Dec 05, 2009
    r1344 (Moved #include <>stdlibstdio.h> either) committed by achaloyan   -   Moved #include <>stdlibstdio.h> either
    Moved #include <>stdlibstdio.h> either
  • Dec 05, 2009
    r1343 (Moved completion cause generation to common place) committed by achaloyan   -   Moved completion cause generation to common place
    Moved completion cause generation to common place
  • Dec 05, 2009
    r1342 (Using portable APR_SIZE_T_FORMAT to print, trace apr_size_t ...) committed by achaloyan   -   Using portable APR_SIZE_T_FORMAT to print, trace apr_size_t values to fix compilation warnings under 64-bit compiler
    Using portable APR_SIZE_T_FORMAT to print, trace apr_size_t values to fix compilation warnings under 64-bit compiler
  • Dec 05, 2009
    r1341 (not to use c++ comments in c code) committed by achaloyan   -   not to use c++ comments in c code
    not to use c++ comments in c code
  • Dec 04, 2009
    asteriskUniMRCP (How to install the asterisk-unimrcp solution.) Wiki page edited by thirionjwf   -   Revision r1340 Fixed comment around uni_version.h
    Revision r1340 Fixed comment around uni_version.h
  • Dec 04, 2009
    asteriskUniMRCP (How to install the asterisk-unimrcp solution.) Wiki page edited by thirionjwf   -   Revision r1339 Removed comment to copy uni_version.h manually to /usr/local/unimrcp/include as 'make install' copies uni_version.h too, since r1324.
    Revision r1339 Removed comment to copy uni_version.h manually to /usr/local/unimrcp/include as 'make install' copies uni_version.h too, since r1324.
  • Dec 04, 2009
    asteriskUniMRCP (How to install the asterisk-unimrcp solution.) Wiki page edited by thirionjwf   -   Revision r1338 Edited wiki page through web user interface.
    Revision r1338 Edited wiki page through web user interface.
  • Dec 03, 2009
    r1337 (Fixed warnings when compiled with CFLAGS=-Wall) committed by thirionjwf   -   Fixed warnings when compiled with CFLAGS=-Wall
    Fixed warnings when compiled with CFLAGS=-Wall
  • Dec 03, 2009
    r1336 (Updated README to give link to installation instructions for...) committed by thirionjwf   -   Updated README to give link to installation instructions for app_unimrcp
    Updated README to give link to installation instructions for app_unimrcp
  • Dec 03, 2009
    asteriskUniMRCP (How to install the asterisk-unimrcp solution.) Wiki page edited by thirionjwf   -   Revision r1335 Edited wiki page through web user interface.
    Revision r1335 Edited wiki page through web user interface.
  • Dec 03, 2009
    r1334 (Fixed autodetection of Asterisk versions, undefined previous...) committed by thirionjwf   -   Fixed autodetection of Asterisk versions, undefined previous PACKAGE defines in app_unimrcp and modified the res_speech_unimrcp Makefile.am to make use of correct Asterisk include directory
    Fixed autodetection of Asterisk versions, undefined previous PACKAGE defines in app_unimrcp and modified the res_speech_unimrcp Makefile.am to make use of correct Asterisk include directory
  • Dec 03, 2009
    r1333 (Added svn:ignore props) committed by achaloyan   -   Added svn:ignore props
    Added svn:ignore props
  • Dec 03, 2009
    r1332 (Added svn:ignore props) committed by achaloyan   -   Added svn:ignore props
    Added svn:ignore props
  • Dec 03, 2009
    asteriskUniMRCP (How to install the asterisk-unimrcp solution.) Wiki page edited by thirionjwf   -   Revision r1331 Edited wiki page through web user interface.
    Revision r1331 Edited wiki page through web user interface.
  • Dec 03, 2009
    asteriskUniMRCP (How to install the asterisk-unimrcp solution.) Wiki page edited by thirionjwf   -   Revision r1330 Edited wiki page through web user interface.
    Revision r1330 Edited wiki page through web user interface.
  • Dec 03, 2009
    asteriskUniMRCP (How to install the asterisk-unimrcp solution.) Wiki page edited by thirionjwf   -   Revision r1329 Edited wiki page through web user interface.
    Revision r1329 Edited wiki page through web user interface.
  • Dec 03, 2009
    asteriskUniMRCP (How to install the asterisk-unimrcp solution.) Wiki page edited by thirionjwf   -   Revision r1328 Edited wiki page through web user interface.
    Revision r1328 Edited wiki page through web user interface.
  • Dec 03, 2009
    asteriskUniMRCP (How to install the asterisk-unimrcp solution.) Wiki page edited by thirionjwf   -   Revision r1327 Edited wiki page through web user interface.
    Revision r1327 Edited wiki page through web user interface.
  • Dec 03, 2009
    asteriskUniMRCP (How to install the asterisk-unimrcp solution.) Wiki page added by thirionjwf   -   Revision r1326 Created wiki page through web user interface.
    Revision r1326 Created wiki page through web user interface.
  • Dec 03, 2009
    r1325 (Added the Asterisk applications, MRCPSynth+MRCPRecog. Allows...) committed by thirionjwf   -   Added the Asterisk applications, MRCPSynth+MRCPRecog. Allows ASR and TTS directly from dialplan.
    Added the Asterisk applications, MRCPSynth+MRCPRecog. Allows ASR and TTS directly from dialplan.
  • Dec 02, 2009
    r1324 (Installed uni_version.h alongside with other header files re...) committed by achaloyan   -   Installed uni_version.h alongside with other header files required for the integration
    Installed uni_version.h alongside with other header files required for the integration
  • Dec 02, 2009
    r1323 (Added realtime-rate to default unimrcpclient.xml and unimrcp...) committed by achaloyan   -   Added realtime-rate to default unimrcpclient.xml and unimrcpserver.xml configuration files. This parameter aims to workaround particular setup, where engine should work n times faster than realtime. Do not change it or leave everything as is, unless you clearly know what you're doing.
    Added realtime-rate to default unimrcpclient.xml and unimrcpserver.xml configuration files. This parameter aims to workaround particular setup, where engine should work n times faster than realtime. Do not change it or leave everything as is, unless you clearly know what you're doing.
  • Dec 02, 2009
    r1322 (Spelled 'synchronously') committed by achaloyan   -   Spelled 'synchronously'
    Spelled 'synchronously'
  • Dec 02, 2009
    issue 54 (Asterisk crashes when res_speech_unimrcp.so is loaded automa...) commented on by thirionjwf   -   Hi Arsen, I agree. Let's wait a bit. PS: the crash not only occurred with the res_speech_unimrcp module, but also my own code. After using the "older" version of sofia-sip, everything was 100%, so I assume the FreeSwitch guys did something which I don't fully understand there yet. Once I have some time, I'll do a diff between the versions to try and understand what might be causing this. Perhaps it is related to the initstate issues I saw earlier... For now, I suppose, we can close the issue? Kind regards, Derik
    Hi Arsen, I agree. Let's wait a bit. PS: the crash not only occurred with the res_speech_unimrcp module, but also my own code. After using the "older" version of sofia-sip, everything was 100%, so I assume the FreeSwitch guys did something which I don't fully understand there yet. Once I have some time, I'll do a diff between the versions to try and understand what might be causing this. Perhaps it is related to the initstate issues I saw earlier... For now, I suppose, we can close the issue? Kind regards, Derik
  • Dec 02, 2009
    issue 54 (Asterisk crashes when res_speech_unimrcp.so is loaded automa...) commented on by achaloyan   -   Hi Derik, So I assume this issue indirectly relates to Issue-53. Probably we should wait a bit more to come to final conclusion. BTW, I still stick with the sofia-sip included in generic unimrcp-deps package. Though I consider to upgrade in the future.
    Hi Derik, So I assume this issue indirectly relates to Issue-53. Probably we should wait a bit more to come to final conclusion. BTW, I still stick with the sofia-sip included in generic unimrcp-deps package. Though I consider to upgrade in the future.
  • Dec 02, 2009
    issue 54 (Asterisk crashes when res_speech_unimrcp.so is loaded automa...) commented on by thirionjwf   -   Hi there, Just out of curiosity, how did you create the sofia-sip in http://unimrcp.googlecode.com/files/uni-ast-package.tar.gz? Is that directly from the trunk of sofia-sip on sourceforge? Kind regards, Derik
    Hi there, Just out of curiosity, how did you create the sofia-sip in http://unimrcp.googlecode.com/files/uni-ast-package.tar.gz? Is that directly from the trunk of sofia-sip on sourceforge? Kind regards, Derik
  • Dec 02, 2009
    issue 54 (Asterisk crashes when res_speech_unimrcp.so is loaded automa...) commented on by thirionjwf   -   Hi there, Just out of curiosity, how did you create the sofia-sip in http://unimrcp.googlecode.com/files/uni-ast-package.tar.gz? Is that directly from the trunk of sofia-sip on sourceforge? Kind regards, Derik
    Hi there, Just out of curiosity, how did you create the sofia-sip in http://unimrcp.googlecode.com/files/uni-ast-package.tar.gz? Is that directly from the trunk of sofia-sip on sourceforge? Kind regards, Derik
  • Dec 02, 2009
    issue 54 (Asterisk crashes when res_speech_unimrcp.so is loaded automa...) commented on by thirionjwf   -   Hi there, I've now run unimrcp trunk, unimrcp-deps-0.8.0's APR, APR-Util, asterisk-unimrcp trunk and sofia-sip from http://unimrcp.googlecode.com/files/uni-ast-package.tar.gz. Everything works 100% and I've not had a single segmentation fault since then. Kind regards, Derik
    Hi there, I've now run unimrcp trunk, unimrcp-deps-0.8.0's APR, APR-Util, asterisk-unimrcp trunk and sofia-sip from http://unimrcp.googlecode.com/files/uni-ast-package.tar.gz. Everything works 100% and I've not had a single segmentation fault since then. Kind regards, Derik
  • Dec 02, 2009
    issue 53 (Memory leak when loading/unloading Asterisk res_speech_unimr...) commented on by thirionjwf   -   Hi there, I've submitted the patch to the Asterisk community: https://issues.asterisk.org/view.php?id=16368 Kind regards, Derik
    Hi there, I've submitted the patch to the Asterisk community: https://issues.asterisk.org/view.php?id=16368 Kind regards, Derik
  • Dec 01, 2009
    issue 53 (Memory leak when loading/unloading Asterisk res_speech_unimr...) commented on by achaloyan   -   Seems it missed also the following to properly terminate tasks/threads http://code.google.com/p/unimrcp/source/detail?r=1321
    Seems it missed also the following to properly terminate tasks/threads http://code.google.com/p/unimrcp/source/detail?r=1321
  • Dec 01, 2009
    r1321 (Added missing apr_thread_exit(), leftover from prev commit.) committed by achaloyan   -   Added missing apr_thread_exit(), leftover from prev commit.
    Added missing apr_thread_exit(), leftover from prev commit.
  • Dec 01, 2009
    issue 53 (Memory leak when loading/unloading Asterisk res_speech_unimr...) changed by achaloyan   -   Hi Derik, I've played a bit with UniMRCP module load/unload routine ins Asterisk and found 3 issues there 1. Asterisk Connector I forgot to destroy the logger while unloading module. So file descriptor remained opened. Fixed in http://code.google.com/p/unimrcp/source/detail?r=1319 2. UniMRCP tasks I had a closer look at what valgrind reports running unimrcp server and client even without Asterisk. It never caused any issue, that's why I didn't pay enough attention to it before. However there indeed was an issue related to task termination. Fixed in trunk http://code.google.com/p/unimrcp/source/detail?r=1320 3. Asterisk crash This one clearly relates to Asterisk and all the versions are affected. Someone may want to raise it to Asterisk community too. Scenario to reproduce 1. Load res_speech_unimrcp module (or any other speech module, it doesn't matter) 2. Do whatever here 3. Unload res_speech_unimrcp 4. Call to Asterisk using the dialplan which use SpeechCreate() without exact name of the module, using the default. 5. Asterisk one to one crashes. The following patch should fix it for Asterisk --- res_speech.c.org 2007-11-22 03:09:02.000000000 +0400 +++ res_speech.c 2009-12-02 01:51:18.000000000 +0400 @@ -313,7 +313,7 @@ /* We have our engine... removed it */ AST_RWLIST_REMOVE_CURRENT(list); /* If this was the default engine, we need to pick a new one */ - if (!default_engine) + if (engine == default_engine) default_engine = AST_RWLIST_FIRST(&engines); ast_verb(2, "Unregistered speech recognition engine '%s'\n", engine_name); /* All went well */ Please try fixes and provide feedback. Thanks for the detailed issue report.
    Status: Fixed
    Labels: Component-Asterisk
    Hi Derik, I've played a bit with UniMRCP module load/unload routine ins Asterisk and found 3 issues there 1. Asterisk Connector I forgot to destroy the logger while unloading module. So file descriptor remained opened. Fixed in http://code.google.com/p/unimrcp/source/detail?r=1319 2. UniMRCP tasks I had a closer look at what valgrind reports running unimrcp server and client even without Asterisk. It never caused any issue, that's why I didn't pay enough attention to it before. However there indeed was an issue related to task termination. Fixed in trunk http://code.google.com/p/unimrcp/source/detail?r=1320 3. Asterisk crash This one clearly relates to Asterisk and all the versions are affected. Someone may want to raise it to Asterisk community too. Scenario to reproduce 1. Load res_speech_unimrcp module (or any other speech module, it doesn't matter) 2. Do whatever here 3. Unload res_speech_unimrcp 4. Call to Asterisk using the dialplan which use SpeechCreate() without exact name of the module, using the default. 5. Asterisk one to one crashes. The following patch should fix it for Asterisk --- res_speech.c.org 2007-11-22 03:09:02.000000000 +0400 +++ res_speech.c 2009-12-02 01:51:18.000000000 +0400 @@ -313,7 +313,7 @@ /* We have our engine... removed it */ AST_RWLIST_REMOVE_CURRENT(list); /* If this was the default engine, we need to pick a new one */ - if (!default_engine) + if (engine == default_engine) default_engine = AST_RWLIST_FIRST(&engines); ast_verb(2, "Unregistered speech recognition engine '%s'\n", engine_name); /* All went well */ Please try fixes and provide feedback. Thanks for the detailed issue report.
    Status: Fixed
    Labels: Component-Asterisk
  • Dec 01, 2009
    issue 53 (Memory leak when loading/unloading Asterisk res_speech_unimr...) changed by achaloyan   -  
    Status: Accepted
    Owner: achaloyan
    Labels: Type-Defect Priority-Medium OpSys-Linux
    Status: Accepted
    Owner: achaloyan
    Labels: Type-Defect Priority-Medium OpSys-Linux
  • Dec 01, 2009
    r1320 (Fixed memory (resource) leak on client/server task terminati...) committed by achaloyan   -   Fixed memory (resource) leak on client/server task termination. Thread MUST be detached first in case of async task termination
    Fixed memory (resource) leak on client/server task termination. Thread MUST be detached first in case of async task termination
  • Dec 01, 2009
    r1319 (Destroy logger on module unload) committed by achaloyan   -   Destroy logger on module unload
    Destroy logger on module unload
  • Nov 30, 2009
    issue 54 (Asterisk crashes when res_speech_unimrcp.so is loaded automa...) reported by thirionjwf   -   Hi there, Here are some tests I have run to show that the Asterisk segmentation faults when the sofia-sip library from the freeswitch project is used (1.2.10devel). I present the results here for anyone who wishes to use asterisk/sofia-sip/unimrcp with this version of sofia-sip and show how to replicate the problem. See Test 3. Test 1 and 2 were successful. I've used on a CentOS 5.4 (2.6.18-164.6.1.el5PAE, gcc 4.1.2) server: http://unimrcp.googlecode.com/files/uni-ast-package.tar.gz 1) Test 1: Standard uni-ast-package.tar.gz: From uni-ast-package.tar.gz I have installed: - Asterisk 1.6.10 - APR 1.3.8 - APR-Util 1.3.9 - Sofia SIP 1.2.10 - UniMRCP 0.8.0 The process I followed, was: # ./ast-install.sh # cd asterisk # make samples # cd .. # ./uni-install.sh # cd asterisk-unimrcp # ./configure # make # make install # asterisk -c core stop now # asterisk -vvvvvvvvvvvvvvvc core stop now No problems with this setup. I then uninstalled everything (APR, APR-Util, Sofia-SIP, UniMRCP, Asterisk). 2) Test 2: Standard uni-ast-package.tar.gz, but asterisk-1.6.0.18: From http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk- 1.6.0.18.tar.gz - Asterisk 1.6.0.18 From uni-ast-package.tar.gz I have installed: - APR 1.3.8 - APR-Util 1.3.9 - Sofia SIP 1.2.10 - UniMRCP 0.8.0 The process I followed, was: # mv asterisk asterisk.1.6.10 # wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk- 1.6.0.18.tar.gz # tar xzvf asterisk-1.6.0.18.tar.gz # mv asterisk-1.6.0.18 asterisk # ./ast-install.sh # cd asterisk # make samples # cd .. # ./uni-install.sh # cd asterisk-unimrcp # ./configure # make # make install # asterisk -c core stop now # asterisk -vvvvvvvvvvvvvvvc core stop now No problems with this setup. I then uninstalled everything (APR, APR-Util, Sofia-SIP, UniMRCP, Asterisk). 3) Test 3: Standard uni-ast-package.tar.gz, but sofia-sip from the freeswitch trunk: From uni-ast-package.tar.gz I have installed: - Asterisk 1.6.10 - APR 1.3.8 - APR-Util 1.3.9 - UniMRCP 0.8.0 From http://svn.freeswitch.org/svn/freeswitch/trunk/libs/sofia-sip - Sofia SIP 1.2.10devel The process I followed, was: # ./ast-install.sh # cd asterisk # make samples # cd .. # cd unimrcp/libs # mv sofia-sip sofia-sip.1.2.10 # svn co http://svn.freeswitch.org/svn/freeswitch/trunk/libs/sofia-sip # chmod a+x autogen.sh # Change libsofia-sip-ua/Makefile.am noinst_LTLIBRARIES = libsofia-sip-ua.la to lib_LTLIBRARIES = libsofia-sip-ua.la Patch file: Index: libsofia-sip-ua/Makefile.am =================================================================== --- libsofia-sip-ua/Makefile.am (revision 15723) +++ libsofia-sip-ua/Makefile.am (working copy) @@ -35,7 +35,7 @@ DOXYGEN = doxygen -noinst_LTLIBRARIES = libsofia-sip-ua.la +lib_LTLIBRARIES = libsofia-sip-ua.la libsofia_sip_ua_la_SOURCES = libsofia_sip_ua_la_LIBADD = bnf/libbnf.la \ # ./autogen.sh # cd ../../ # ./uni-install.sh # cd asterisk-unimrcp # ./configure # make # make install # asterisk -c core stop now No problems with that test using low verbosity # asterisk -vvvvvvvvvvvvvvvvvvvvvvvvvc Segmentation fault (core dumped) Segmentation fault occurs (place seems to be quite random, but lower down in call stack it is always in the load_modules function - loader.c:1050, SSL_accept as last entry on call stack). Below are backtraces for two attempts at running asterisk in the console. Running asterisk with valgrind, doesn't cause a segmentation fault (but it does obviously load very slowly, so race conditions won't occur that easily): # valgrind --leak-check=full --show-reachable=yes --log-file=/root/uni-ast- package.valgrind.log /usr/sbin/asterisk -vvvvvvvvvvvvvvvvvvvvvvvvvc Also running asterisk by starting it up as a daemon, works fine as well: # asterisk # asterisk -r Finally, adding "noload => res_speech_unimrcp.so" to /etc/asterisk/modules.conf, starting asterisk with (asterisk - vvvvvvvvvvvvvvvvvvvvvvvvvc), and then after asterisk loaded successfully, typing "module load res_speech_unimrcp.so" works fine and causes no crashes. So the segmentation fault occurs when verbosity is high and asterisk is started on the console with res_speech_unimrcp.so loaded automatically on start-up. So it looks like the problem somehow comes in with sofia-sip from the freeswitch trunk, perhaps some dependent library not yet properly initialized, I don't know. I'm not sure what is different between the sofia-sip version you are using and the one used in the freeswitch trunk. Kind regards, Derik Thirion # asterisk -vvvvvvvvvvvvvvvvvvvvvvvvvc Segmentation fault (core dumped) #0 0x005305e9 in strcasecmp () from /lib/libc.so.6 #1 0x080e164f in ast_manager_register_struct (act=0xb40074c0) at manager.c:3385 #2 0x080e17c5 in ast_manager_register2 (action=0x2d1077f "SIPpeers", auth=513, func=0x2ca3350 <manager_sip_show_peers>, synopsis=0x2d11d9a "List SIP peers (text format)", description=0x2d22f60 "Description: Lists SIP peers in text format with details on current status.\nPeerlist will follow as separate events, followed by a final event called\nPeerlistComplete.\nVariables: \n ActionID: <id>\tAct"...) at manager.c:3424 #3 0x02cd5fd6 in load_module () at chan_sip.c:24564 #4 0x080da761 in start_resource (mod=0x8c0c2b8) at loader.c:726 #5 0x080db3e6 in load_resource_list (load_order=0xbfc55df0, global_symbols=0, mod_count=0xbfc55df8) at loader.c:904 #6 0x080db6c6 in load_modules (preload_only=0) at loader.c:1050 #7 0x080784c9 in main (argc=2, argv=0xbfc57314) at asterisk.c:3487 #8 0x004d4e9c in __libc_start_main () from /lib/libc.so.6 #9 0x0805c871 in SSL_accept () (gdb) frame 0 #0 0x005305e9 in strcasecmp () from /lib/libc.so.6 (gdb) frame 1 #1 0x080e164f in ast_manager_register_struct (act=0xb40074c0) at manager.c:3385 3385 int ret = strcasecmp(cur->action, act->action); (gdb) frame 2 #2 0x080e17c5 in ast_manager_register2 (action=0x2d1077f "SIPpeers", auth=513, func=0x2ca3350 <manager_sip_show_peers>, synopsis=0x2d11d9a "List SIP peers (text format)", description=0x2d22f60 "Description: Lists SIP peers in text format with details on current status.\nPeerlist will follow as separate events, followed by a final event called\nPeerlistComplete.\nVariables: \n ActionID: <id>\tAct"...) at manager.c:3424 3424 if (ast_manager_register_struct(cur)) { (gdb) frame 3 #3 0x02cd5fd6 in load_module () at chan_sip.c:24564 24564 ast_manager_register2("SIPpeers", EVENT_FLAG_SYSTEM | EVENT_FLAG_REPORTING, manager_sip_show_peers, (gdb) frame 4 #4 0x080da761 in start_resource (mod=0x8c0c2b8) at loader.c:726 726 res = mod->info->load(); (gdb) frame 5 #5 0x080db3e6 in load_resource_list (load_order=0xbfc55df0, global_symbols=0, mod_count=0xbfc55df8) at loader.c:904 904 switch (start_resource(mod)) { (gdb) frame 6 #6 0x080db6c6 in load_modules (preload_only=0) at loader.c:1050 1050 if ((res = load_resource_list(&load_order, 0, &modulecount)) < 0) { (gdb) frame 7 #7 0x080784c9 in main (argc=2, argv=0xbfc57314) at asterisk.c:3487 3487 if (load_modules(0)) { (gdb) frame 8 #8 0x004d4e9c in __libc_start_main () from /lib/libc.so.6 (gdb) frame 9 #9 0x0805c871 in SSL_accept () # asterisk -vvvvvvvvvvvvvvvvvvvvvvvvvc Segmentation fault (core dumped) #0 0x005305f3 in strcasecmp () from /lib/libc.so.6 #1 0x080f2261 in ast_register_application2 (app=0x15da0e "StackPop", execute=0x15cc60 <pop_exec>, synopsis=0x15d658 "Remove one address from gosub stack", description=0x15d618 " StackPop():\nRemoves last label on the stack, discarding it.\n", mod=0xb7c135a0) at pbx.c:4568 #2 0x0015b46d in load_module () at app_stack.c:542 #3 0x080da761 in start_resource (mod=0xb7c135a0) at loader.c:726 #4 0x080db3e6 in load_resource_list (load_order=0xbfea1d90, global_symbols=0, mod_count=0xbfea1d98) at loader.c:904 #5 0x080db6c6 in load_modules (preload_only=0) at loader.c:1050 #6 0x080784c9 in main (argc=2, argv=0xbfea32b4) at asterisk.c:3487 #7 0x004d4e9c in __libc_start_main () from /lib/libc.so.6 #8 0x0805c871 in SSL_accept () (gdb) frame 0 #0 0x005305f3 in strcasecmp () from /lib/libc.so.6 (gdb) frame 1 #1 0x080f2261 in ast_register_application2 (app=0x15da0e "StackPop", execute=0x15cc60 <pop_exec>, synopsis=0x15d658 "Remove one address from gosub stack", description=0x15d618 " StackPop():\nRemoves last label on the stack, discarding it.\n", mod=0xb7c135a0) at pbx.c:4568 4568 if (!(res = strcasecmp(app, tmp->name))) { (gdb) frame 2 #2 0x0015b46d in load_module () at app_stack.c:542 542 ast_register_application(app_pop, pop_exec, pop_synopsis, pop_descrip); (gdb) frame 3 #3 0x080da761 in start_resource (mod=0xb7c135a0) at loader.c:726 726 res = mod->info->load(); (gdb) frame 4 #4 0x080db3e6 in load_resource_list (load_order=0xbfea1d90, global_symbols=0, mod_count=0xbfea1d98) at loader.c:904 904 switch (start_resource(mod)) { (gdb) frame 5 #5 0x080db6c6 in load_modules (preload_only=0) at loader.c:1050 1050 if ((res = load_resource_list(&load_order, 0, &modulecount)) < 0) { (gdb) frame 6 #6 0x080784c9 in main (argc=2, argv=0xbfea32b4) at asterisk.c:3487 3487 if (load_modules(0)) { (gdb) frame 7 #7 0x004d4e9c in __libc_start_main () from /lib/libc.so.6 (gdb) frame 8 #8 0x0805c871 in SSL_accept ()
    Hi there, Here are some tests I have run to show that the Asterisk segmentation faults when the sofia-sip library from the freeswitch project is used (1.2.10devel). I present the results here for anyone who wishes to use asterisk/sofia-sip/unimrcp with this version of sofia-sip and show how to replicate the problem. See Test 3. Test 1 and 2 were successful. I've used on a CentOS 5.4 (2.6.18-164.6.1.el5PAE, gcc 4.1.2) server: http://unimrcp.googlecode.com/files/uni-ast-package.tar.gz 1) Test 1: Standard uni-ast-package.tar.gz: From uni-ast-package.tar.gz I have installed: - Asterisk 1.6.10 - APR 1.3.8 - APR-Util 1.3.9 - Sofia SIP 1.2.10 - UniMRCP 0.8.0 The process I followed, was: # ./ast-install.sh # cd asterisk # make samples # cd .. # ./uni-install.sh # cd asterisk-unimrcp # ./configure # make # make install # asterisk -c core stop now # asterisk -vvvvvvvvvvvvvvvc core stop now No problems with this setup. I then uninstalled everything (APR, APR-Util, Sofia-SIP, UniMRCP, Asterisk). 2) Test 2: Standard uni-ast-package.tar.gz, but asterisk-1.6.0.18: From http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk- 1.6.0.18.tar.gz - Asterisk 1.6.0.18 From uni-ast-package.tar.gz I have installed: - APR 1.3.8 - APR-Util 1.3.9 - Sofia SIP 1.2.10 - UniMRCP 0.8.0 The process I followed, was: # mv asterisk asterisk.1.6.10 # wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk- 1.6.0.18.tar.gz # tar xzvf asterisk-1.6.0.18.tar.gz # mv asterisk-1.6.0.18 asterisk # ./ast-install.sh # cd asterisk # make samples # cd .. # ./uni-install.sh # cd asterisk-unimrcp # ./configure # make # make install # asterisk -c core stop now # asterisk -vvvvvvvvvvvvvvvc core stop now No problems with this setup. I then uninstalled everything (APR, APR-Util, Sofia-SIP, UniMRCP, Asterisk). 3) Test 3: Standard uni-ast-package.tar.gz, but sofia-sip from the freeswitch trunk: From uni-ast-package.tar.gz I have installed: - Asterisk 1.6.10 - APR 1.3.8 - APR-Util 1.3.9 - UniMRCP 0.8.0 From http://svn.freeswitch.org/svn/freeswitch/trunk/libs/sofia-sip - Sofia SIP 1.2.10devel The process I followed, was: # ./ast-install.sh # cd asterisk # make samples # cd .. # cd unimrcp/libs # mv sofia-sip sofia-sip.1.2.10 # svn co http://svn.freeswitch.org/svn/freeswitch/trunk/libs/sofia-sip # chmod a+x autogen.sh # Change libsofia-sip-ua/Makefile.am noinst_LTLIBRARIES = libsofia-sip-ua.la to lib_LTLIBRARIES = libsofia-sip-ua.la Patch file: Index: libsofia-sip-ua/Makefile.am =================================================================== --- libsofia-sip-ua/Makefile.am (revision 15723) +++ libsofia-sip-ua/Makefile.am (working copy) @@ -35,7 +35,7 @@ DOXYGEN = doxygen -noinst_LTLIBRARIES = libsofia-sip-ua.la +lib_LTLIBRARIES = libsofia-sip-ua.la libsofia_sip_ua_la_SOURCES = libsofia_sip_ua_la_LIBADD = bnf/libbnf.la \ # ./autogen.sh # cd ../../ # ./uni-install.sh # cd asterisk-unimrcp # ./configure # make # make install # asterisk -c core stop now No problems with that test using low verbosity # asterisk -vvvvvvvvvvvvvvvvvvvvvvvvvc Segmentation fault (core dumped) Segmentation fault occurs (place seems to be quite random, but lower down in call stack it is always in the load_modules function - loader.c:1050, SSL_accept as last entry on call stack). Below are backtraces for two attempts at running asterisk in the console. Running asterisk with valgrind, doesn't cause a segmentation fault (but it does obviously load very slowly, so race conditions won't occur that easily): # valgrind --leak-check=full --show-reachable=yes --log-file=/root/uni-ast- package.valgrind.log /usr/sbin/asterisk -vvvvvvvvvvvvvvvvvvvvvvvvvc Also running asterisk by starting it up as a daemon, works fine as well: # asterisk # asterisk -r Finally, adding "noload => res_speech_unimrcp.so" to /etc/asterisk/modules.conf, starting asterisk with (asterisk - vvvvvvvvvvvvvvvvvvvvvvvvvc), and then after asterisk loaded successfully, typing "module load res_speech_unimrcp.so" works fine and causes no crashes. So the segmentation fault occurs when verbosity is high and asterisk is started on the console with res_speech_unimrcp.so loaded automatically on start-up. So it looks like the problem somehow comes in with sofia-sip from the freeswitch trunk, perhaps some dependent library not yet properly initialized, I don't know. I'm not sure what is different between the sofia-sip version you are using and the one used in the freeswitch trunk. Kind regards, Derik Thirion # asterisk -vvvvvvvvvvvvvvvvvvvvvvvvvc Segmentation fault (core dumped) #0 0x005305e9 in strcasecmp () from /lib/libc.so.6 #1 0x080e164f in ast_manager_register_struct (act=0xb40074c0) at manager.c:3385 #2 0x080e17c5 in ast_manager_register2 (action=0x2d1077f "SIPpeers", auth=513, func=0x2ca3350 <manager_sip_show_peers>, synopsis=0x2d11d9a "List SIP peers (text format)", description=0x2d22f60 "Description: Lists SIP peers in text format with details on current status.\nPeerlist will follow as separate events, followed by a final event called\nPeerlistComplete.\nVariables: \n ActionID: <id>\tAct"...) at manager.c:3424 #3 0x02cd5fd6 in load_module () at chan_sip.c:24564 #4 0x080da761 in start_resource (mod=0x8c0c2b8) at loader.c:726 #5 0x080db3e6 in load_resource_list (load_order=0xbfc55df0, global_symbols=0, mod_count=0xbfc55df8) at loader.c:904 #6 0x080db6c6 in load_modules (preload_only=0) at loader.c:1050 #7 0x080784c9 in main (argc=2, argv=0xbfc57314) at asterisk.c:3487 #8 0x004d4e9c in __libc_start_main () from /lib/libc.so.6 #9 0x0805c871 in SSL_accept () (gdb) frame 0 #0 0x005305e9 in strcasecmp () from /lib/libc.so.6 (gdb) frame 1 #1 0x080e164f in ast_manager_register_struct (act=0xb40074c0) at manager.c:3385 3385 int ret = strcasecmp(cur->action, act->action); (gdb) frame 2 #2 0x080e17c5 in ast_manager_register2 (action=0x2d1077f "SIPpeers", auth=513, func=0x2ca3350 <manager_sip_show_peers>, synopsis=0x2d11d9a "List SIP peers (text format)", description=0x2d22f60 "Description: Lists SIP peers in text format with details on current status.\nPeerlist will follow as separate events, followed by a final event called\nPeerlistComplete.\nVariables: \n ActionID: <id>\tAct"...) at manager.c:3424 3424 if (ast_manager_register_struct(cur)) { (gdb) frame 3 #3 0x02cd5fd6 in load_module () at chan_sip.c:24564 24564 ast_manager_register2("SIPpeers", EVENT_FLAG_SYSTEM | EVENT_FLAG_REPORTING, manager_sip_show_peers, (gdb) frame 4 #4 0x080da761 in start_resource (mod=0x8c0c2b8) at loader.c:726 726 res = mod->info->load(); (gdb) frame 5 #5 0x080db3e6 in load_resource_list (load_order=0xbfc55df0, global_symbols=0, mod_count=0xbfc55df8) at loader.c:904 904 switch (start_resource(mod)) { (gdb) frame 6 #6 0x080db6c6 in load_modules (preload_only=0) at loader.c:1050 1050 if ((res = load_resource_list(&load_order, 0, &modulecount)) < 0) { (gdb) frame 7 #7 0x080784c9 in main (argc=2, argv=0xbfc57314) at asterisk.c:3487 3487 if (load_modules(0)) { (gdb) frame 8 #8 0x004d4e9c in __libc_start_main () from /lib/libc.so.6 (gdb) frame 9 #9 0x0805c871 in SSL_accept () # asterisk -vvvvvvvvvvvvvvvvvvvvvvvvvc Segmentation fault (core dumped) #0 0x005305f3 in strcasecmp () from /lib/libc.so.6 #1 0x080f2261 in ast_register_application2 (app=0x15da0e "StackPop", execute=0x15cc60 <pop_exec>, synopsis=0x15d658 "Remove one address from gosub stack", description=0x15d618 " StackPop():\nRemoves last label on the stack, discarding it.\n", mod=0xb7c135a0) at pbx.c:4568 #2 0x0015b46d in load_module () at app_stack.c:542 #3 0x080da761 in start_resource (mod=0xb7c135a0) at loader.c:726 #4 0x080db3e6 in load_resource_list (load_order=0xbfea1d90, global_symbols=0, mod_count=0xbfea1d98) at loader.c:904 #5 0x080db6c6 in load_modules (preload_only=0) at loader.c:1050 #6 0x080784c9 in main (argc=2, argv=0xbfea32b4) at asterisk.c:3487 #7 0x004d4e9c in __libc_start_main () from /lib/libc.so.6 #8 0x0805c871 in SSL_accept () (gdb) frame 0 #0 0x005305f3 in strcasecmp () from /lib/libc.so.6 (gdb) frame 1 #1 0x080f2261 in ast_register_application2 (app=0x15da0e "StackPop", execute=0x15cc60 <pop_exec>, synopsis=0x15d658 "Remove one address from gosub stack", description=0x15d618 " StackPop():\nRemoves last label on the stack, discarding it.\n", mod=0xb7c135a0) at pbx.c:4568 4568 if (!(res = strcasecmp(app, tmp->name))) { (gdb) frame 2 #2 0x0015b46d in load_module () at app_stack.c:542 542 ast_register_application(app_pop, pop_exec, pop_synopsis, pop_descrip); (gdb) frame 3 #3 0x080da761 in start_resource (mod=0xb7c135a0) at loader.c:726 726 res = mod->info->load(); (gdb) frame 4 #4 0x080db3e6 in load_resource_list (load_order=0xbfea1d90, global_symbols=0, mod_count=0xbfea1d98) at loader.c:904 904 switch (start_resource(mod)) { (gdb) frame 5 #5 0x080db6c6 in load_modules (preload_only=0) at loader.c:1050 1050 if ((res = load_resource_list(&load_order, 0, &modulecount)) < 0) { (gdb) frame 6 #6 0x080784c9 in main (argc=2, argv=0xbfea32b4) at asterisk.c:3487 3487 if (load_modules(0)) { (gdb) frame 7 #7 0x004d4e9c in __libc_start_main () from /lib/libc.so.6 (gdb) frame 8 #8 0x0805c871 in SSL_accept ()
  • Nov 30, 2009
    issue 53 (Memory leak when loading/unloading Asterisk res_speech_unimr...) reported by thirionjwf   -   Hi there, I've used on a CentOS 5.4 (2.6.18-164.6.1.el5PAE, gcc 4.1.2) server: http://unimrcp.googlecode.com/files/uni-ast-package.tar.gz and from this .tar.gz I have installed: - Asterisk 1.6.10 - APR 1.3.8 - APR-Util 1.3.9 - Sofia SIP 1.2.10 - UniMRCP 0.8.0 The process I followed, was: # ./ast-install.sh # cd asterisk # make samples # cd .. # ./uni-install.sh # cd asterisk-unimrcp # ./configure # make # make install I then started Asterisk in a console (asterisk -c) and looked at memory usage. Asterisk's memory usage starts at virt=98388,res=14404 and after 3 "module unload res_speech_unimrcp", "module load res_speech_unimrcp", it was at virt=190596,res=14548. After another 3 unload,loads, it was at virt=282804,res=14652. In trying to isolate the leak, I used valgrind. I then started Asterisk in valgrind (valgrind --leak-check=full --show-reachable=yes --log- file=/root/uni-ast-package.valgrind.log /usr/sbin/asterisk -c) and checked the memory usage while doing "module unload res_speech_unimrcp", "module load res_speech_unimrcp". Memory usage tends to grow continuously without me even loading/unloading, so I think that's probably valgrind messing up. I shut asterisk down using "core stop gracefully" after I did a "module unload res_speech_unimrcp", just to make sure (see uni-ast- package.valgrind.log.9287). If I don't do a "module unload res_speech_unimrcp", it shows some leaks in unimrcp, but I'm not sure whether Asterisk doesn't unload the module properly - although it did print the following (see uni-ast-package.valgrind.log.10535): *CLI> core stop gracefully 2009-11-30 22:08:27:858884 [INFO] Terminate MRCP Client [Nov 30 22:08:27] NOTICE[10535]: res_speech_unimrcp.c:929 unload_module: Unload UniMRCP module 2009-11-30 22:08:27:863328 [INFO] Terminate SofiaSIP Agent 2009-11-30 22:08:27:867263 [INFO] Terminate UniRTSP Agent 2009-11-30 22:08:27:912252 [INFO] Receive SIP Event [nua_r_shutdown] Status 200 Shutdown successful 2009-11-30 22:08:27:937971 [INFO] Terminate TCP/MRCPv2 Connection Agent 2009-11-30 22:08:27:943990 [INFO] Terminate Media Processing Engine 2009-11-30 22:08:27:970040 [NOTICE] MRCP Client Terminated 2009-11-30 22:08:27:977354 [INFO] Destroy SofiaSIP Agent 2009-11-30 22:08:27:978605 [INFO] Destroy UniRTSP Agent 2009-11-30 22:08:27:980798 [INFO] Destroy TCP/MRCPv2 Connection Agent 2009-11-30 22:08:27:982727 [INFO] Destroy Media Processing Engine 2009-11-30 22:08:27:985232 [INFO] Destroy MRCP Client There are also some strange Sofia-SIP "invalid reads". Full valgrind traces are attached: uni-ast-package.valgrind.log.9287 - Trace from first doing "module unload res_speech_unimrcp.so" and then "core stop gracefully". uni-ast-package.valgrind.log.10535 - Trace from "core stop gracefully" immediately. My conclusion is that it is probably Asterisk-related, because if I module unload before terminating Asterisk, I don't get a leak. So, this would not explain why memory grows with loading and unloading the module - again indicating problems in Asterisk, rather than UniMRCP. Your help/comments would be appreciated. Kind regards, Derik Thirion
    Hi there, I've used on a CentOS 5.4 (2.6.18-164.6.1.el5PAE, gcc 4.1.2) server: http://unimrcp.googlecode.com/files/uni-ast-package.tar.gz and from this .tar.gz I have installed: - Asterisk 1.6.10 - APR 1.3.8 - APR-Util 1.3.9 - Sofia SIP 1.2.10 - UniMRCP 0.8.0 The process I followed, was: # ./ast-install.sh # cd asterisk # make samples # cd .. # ./uni-install.sh # cd asterisk-unimrcp # ./configure # make # make install I then started Asterisk in a console (asterisk -c) and looked at memory usage. Asterisk's memory usage starts at virt=98388,res=14404 and after 3 "module unload res_speech_unimrcp", "module load res_speech_unimrcp", it was at virt=190596,res=14548. After another 3 unload,loads, it was at virt=282804,res=14652. In trying to isolate the leak, I used valgrind. I then started Asterisk in valgrind (valgrind --leak-check=full --show-reachable=yes --log- file=/root/uni-ast-package.valgrind.log /usr/sbin/asterisk -c) and checked the memory usage while doing "module unload res_speech_unimrcp", "module load res_speech_unimrcp". Memory usage tends to grow continuously without me even loading/unloading, so I think that's probably valgrind messing up. I shut asterisk down using "core stop gracefully" after I did a "module unload res_speech_unimrcp", just to make sure (see uni-ast- package.valgrind.log.9287). If I don't do a "module unload res_speech_unimrcp", it shows some leaks in unimrcp, but I'm not sure whether Asterisk doesn't unload the module properly - although it did print the following (see uni-ast-package.valgrind.log.10535): *CLI> core stop gracefully 2009-11-30 22:08:27:858884 [INFO] Terminate MRCP Client [Nov 30 22:08:27] NOTICE[10535]: res_speech_unimrcp.c:929 unload_module: Unload UniMRCP module 2009-11-30 22:08:27:863328 [INFO] Terminate SofiaSIP Agent 2009-11-30 22:08:27:867263 [INFO] Terminate UniRTSP Agent 2009-11-30 22:08:27:912252 [INFO] Receive SIP Event [nua_r_shutdown] Status 200 Shutdown successful 2009-11-30 22:08:27:937971 [INFO] Terminate TCP/MRCPv2 Connection Agent 2009-11-30 22:08:27:943990 [INFO] Terminate Media Processing Engine 2009-11-30 22:08:27:970040 [NOTICE] MRCP Client Terminated 2009-11-30 22:08:27:977354 [INFO] Destroy SofiaSIP Agent 2009-11-30 22:08:27:978605 [INFO] Destroy UniRTSP Agent 2009-11-30 22:08:27:980798 [INFO] Destroy TCP/MRCPv2 Connection Agent 2009-11-30 22:08:27:982727 [INFO] Destroy Media Processing Engine 2009-11-30 22:08:27:985232 [INFO] Destroy MRCP Client There are also some strange Sofia-SIP "invalid reads". Full valgrind traces are attached: uni-ast-package.valgrind.log.9287 - Trace from first doing "module unload res_speech_unimrcp.so" and then "core stop gracefully". uni-ast-package.valgrind.log.10535 - Trace from "core stop gracefully" immediately. My conclusion is that it is probably Asterisk-related, because if I module unload before terminating Asterisk, I don't get a leak. So, this would not explain why memory grows with loading and unloading the module - again indicating problems in Asterisk, rather than UniMRCP. Your help/comments would be appreciated. Kind regards, Derik Thirion
  • Nov 30, 2009
    uni-ast-package.tar.gz (UniMRCP integrated Asterisk deployment) file uploaded by achaloyan   -  
    Labels: Type-Source OpSys-Linux
    Labels: Type-Source OpSys-Linux
  • Nov 29, 2009
    r1318 (Added an instruction on how to checkout a working copy of th...) committed by achaloyan   -   Added an instruction on how to checkout a working copy of the module from svn
    Added an instruction on how to checkout a working copy of the module from svn
  • Nov 29, 2009
    r1317 (Updated README) committed by achaloyan   -   Updated README
    Updated README
 
Hosted by Google Code