[Freeswitch-dev] crash running the core twice in one process

Mathieu Rene mrene_lists at avgs.ca
Thu Jul 2 07:49:36 PDT 2009


Why exactly do you want to restart the whole core? FS is modular  
enough so you can restart it per module.

Math

On 2-Jul-09, at 10:47 AM, Tamas wrote:

> Hi,
>
> I started with switch.c and saw execv lines. This works for sure.  
> What I
> don't know is that why the way I'm doing does not work, what have I  
> missed.
> My original problem is that when I tear down FS core started in a
> thread, there is no issue, however when I tear down the thread FS core
> was running in, I'm getting segfault which is similar to what I was  
> able
> to reproduce with this fshost example (when I don't have FS  
> initiated in
> that thread, thread tearing works fine).
>
> ...
> 2009-07-02 16:41:08.777480 [CONSOLE] switch_core_sqldb.c:593 Waiting  
> for
> unfinished SQL transactions
> 2009-07-02 16:41:08.777576 [NOTICE] switch_core_sqldb.c:199 SQL thread
> ending
> 2009-07-02 16:41:08.787766 [CONSOLE] switch_scheduler.c:305 Stopping
> Task Thread
> 2009-07-02 16:41:09.190129 [DEBUG] switch_scheduler.c:138 Deleting  
> task
> 1 heartbeat (core)
> 2009-07-02 16:41:09.253047 [NOTICE] switch_scheduler.c:176 Task thread
> ending
> 2009-07-02 16:41:09.288623 [CONSOLE] switch_core.c:1656 Closing Event
> Engine.
> 2009-07-02 16:41:09.288746 [CONSOLE] switch_event.c:468 Stopping event
> queue 0
> 2009-07-02 16:41:09.288801 [CONSOLE] switch_event.c:468 Stopping event
> queue 1
> 2009-07-02 16:41:09.288844 [CONSOLE] switch_event.c:468 Stopping event
> queue 2
> 2009-07-02 16:41:09.288888 [CONSOLE] switch_event.c:325 Event Thread 1
> Ended.
> 2009-07-02 16:41:09.288884 [CONSOLE] switch_event.c:474 Stopping
> dispatch queue 0
> 2009-07-02 16:41:09.289079 [CONSOLE] switch_event.c:263 Dispatch  
> Thread
> 0 Ended.
> 2009-07-02 16:41:09.289312 [CONSOLE] switch_event.c:325 Event Thread 2
> Ended.
> 2009-07-02 16:41:09.290423 [CONSOLE] switch_event.c:492 Stopping
> dispatch thread 0
> 2009-07-02 16:41:09.290471 [CONSOLE] switch_event.c:506 Stopping queue
> thread 0
> 2009-07-02 16:41:09.288922 [CONSOLE] switch_event.c:325 Event Thread 0
> Ended.
> 2009-07-02 16:41:09.345453 [CONSOLE] switch_event.c:506 Stopping queue
> thread 1
> 2009-07-02 16:41:09.345510 [CONSOLE] switch_event.c:506 Stopping queue
> thread 2
> 2009-07-02 16:41:09.345561 [CONSOLE] switch_core.c:1659 Finalizing  
> Shutdown.
> 2009-07-02 16:41:09.345697 [CONSOLE] switch_log.c:255 Logger Ended.
> 2009-07-02 16:41:09.347192 [CONSOLE] switch_core_memory.c:567 Stopping
> memory pool queue.
> Initializing globals...
> Initializing core...
> 2009-07-02 16:41:09.448524 [INFO] switch_event.c:565 Activate Eventing
> Engine.
> Szegmens hiba (core dumped)
>
> Core was generated by `./fshost'.
> Program terminated with signal 11, Segmentation fault.
> #0  0x00007fce6f8fca7f in apr_queue_trypush (queue=0x7fce6d54c5a8,
> data=0x17cf600) at misc/apr_queue.c:215
> 215        if (queue->terminated) {
> (gdb) bt
> #0  0x00007fce6f8fca7f in apr_queue_trypush (queue=0x7fce6d54c5a8,
> data=0x17cf600) at misc/apr_queue.c:215
> #1  0x00007fce6f86c64a in switch_queue_trypush (queue=0x7fce6d54c5a8,
> data=0x17cf600) at src/switch_apr.c:931
> #2  0x00007fce6f8a3ab8 in switch_event_thread (thread=0x1bd5028,
> obj=0x17bdb38) at src/switch_event.c:305
> #3  0x00007fce6f910c01 in dummy_worker (opaque=0x1bd5028) at
> threadproc/unix/thread.c:138
> #4  0x00007fce6ec5d3ba in start_thread () from /lib/libpthread.so.0
> #5  0x00007fce6f59bfcd in clone () from /lib/libc.so.6
> #6  0x0000000000000000 in ?? ()
> (gdb) bt full
> #0  0x00007fce6f8fca7f in apr_queue_trypush (queue=0x7fce6d54c5a8,
> data=0x17cf600) at misc/apr_queue.c:215
>        rv = 0
> #1  0x00007fce6f86c64a in switch_queue_trypush (queue=0x7fce6d54c5a8,
> data=0x17cf600) at src/switch_apr.c:931
>        s = 0
> #2  0x00007fce6f8a3ab8 in switch_event_thread (thread=0x1bd5028,
> obj=0x17bdb38) at src/switch_event.c:305
>        pop = 0x17cf600
>        event = 0x17cf600
>        queue = 0x17bdb38
>        index = 0
>        my_id = 0
>        __func__ = "switch_event_thread"
> #3  0x00007fce6f910c01 in dummy_worker (opaque=0x1bd5028) at
> threadproc/unix/thread.c:138
>        thread = 0x1bd5028
> #4  0x00007fce6ec5d3ba in start_thread () from /lib/libpthread.so.0
> No symbol table info available.
> #5  0x00007fce6f59bfcd in clone () from /lib/libc.so.6
> No symbol table info available.
> #6  0x0000000000000000 in ?? ()
> No symbol table info available.
> (gdb)
>
>
> New info: for the shutdown issue (a different one) I've found that  
> when
> I don't load mod_portaudio, there is no segfault on shutdown, it tears
> down everything cleanly. For the fshost issue the same did not have  
> any
> effect.
> Is there any know practice how to debug such thing?
>
> I'll keep working on these issues...
>
> Regards,
>    Tamas
>
>
> Anthony Minessale írta:
>> look in switch.c
>>
>> we do it when you say "fsctl shutdown restart" and it works fine over
>> and over.
>>
>>
>>
>> On Wed, Jul 1, 2009 at 5:52 PM, Tamas <jalsot at gmail.com
>> <mailto:jalsot at gmail.com>> wrote:
>>
>>    Hello,
>>
>>    I'm trying to embed FS in a C application where I should have to
>>    restart
>>    the whole stuff (core) in one process/thread, however it  
>> crashes. I
>>    assume, something is not freed up before the new startup. I've  
>> used
>>    mrene's fshost example to reproduce the issue:
>>
>>    Index: contrib/mrene/fshost/main.c
>>     
>> ===================================================================
>>    --- contrib/mrene/fshost/main.c    (revision 14092)
>>    +++ contrib/mrene/fshost/main.c    (working copy)
>>     -82,7 +82,34 @@
>>
>>            ret = system(buf);
>>        }
>>    +
>>    +
>>    +    /* Here I start my 2nd start */
>>    +
>>    +    /* Initialize libs & globals */
>>    +    printf("Initializing globals...\n");
>>    +    switch_core_setrlimits();
>>    +    switch_core_set_globals();
>>
>>    +    /* If you need to override configuration directories, you  
>> need to
>>    change them in the SWITCH_GLOBAL_dirs global structure */
>>    +    printf("Initializing core...\n");
>>    +    /* Initialize the core and load modules, that will startup FS
>>    completely */
>>    +    if (switch_core_init_and_modload(flags, console, &err) !=
>>    SWITCH_STATUS_SUCCESS) {
>>    +        fprintf(stderr, "Failed to initialize FreeSWITCH's core:
>>    %s\n",
>>    err);
>>    +        return 1;
>>    +    }
>>    +
>>    +    printf("Everything OK, Entering runtime loop.\n");
>>    +
>>    +    fflush(stdout);
>>    +
>>    +    /* Go into the runtime loop. If the argument is true, this
>>    basically sets runtime.running = 1 and loops while that is set
>>    +     * If its false, it initializes the libedit for the  
>> console, then
>>    does the same thing
>>    +     */
>>    +    switch_core_runtime_loop(!console);
>>    +
>>    +    /* When the runtime loop exits, its time to shutdown */
>>    +    destroy_status = switch_core_destroy();
>>        return ret;
>>     }
>>
>>     -95,4 +122,4 @@
>>     * End:
>>     * For VIM:
>>     * vim:set softtabstop=4 shiftwidth=4 tabstop=4:
>>    - */
>>    \ No newline at end of file
>>    + */
>>
>>
>>    Here are some gdb backtraces:
>>
>>    (gdb) bt
>>    #0  0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8,
>>    data=0x12b4b60) at misc/apr_queue.c:215
>>    #1  0x00007fb418c0464a in switch_queue_trypush  
>> (queue=0x7fb4168e45a8,
>>    data=0x12b4b60) at src/switch_apr.c:931
>>    #2  0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98,
>>    obj=0x12b8398) at src/switch_event.c:305
>>    #3  0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at
>>    threadproc/unix/thread.c:138
>>    #4  0x00007fb417ff53ba in start_thread () from /lib/ 
>> libpthread.so.0
>>    #5  0x00007fb418933fcd in clone () from /lib/libc.so.6
>>    #6  0x0000000000000000 in ?? ()
>>    (gdb) bt full
>>    #0  0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8,
>>    data=0x12b4b60) at misc/apr_queue.c:215
>>           rv = 0
>>    #1  0x00007fb418c0464a in switch_queue_trypush  
>> (queue=0x7fb4168e45a8,
>>    data=0x12b4b60) at src/switch_apr.c:931
>>           s = 0
>>    #2  0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98,
>>    obj=0x12b8398) at src/switch_event.c:305
>>           pop = 0x12b4b60
>>           event = 0x12b4b60
>>           queue = 0x12b8398
>>           index = 0
>>           my_id = 0
>>           __func__ = "switch_event_thread"
>>    #3  0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at
>>    threadproc/unix/thread.c:138
>>           thread = 0x1663a98
>>    #4  0x00007fb417ff53ba in start_thread () from /lib/ 
>> libpthread.so.0
>>    No symbol table info available.
>>    #5  0x00007fb418933fcd in clone () from /lib/libc.so.6
>>    No symbol table info available.
>>    #6  0x0000000000000000 in ?? ()
>>    No symbol table info available.
>>
>>
>>    (gdb) thread apply all bt
>>
>>    Thread 5 (Thread 31286):
>>    #0  0x00007fb41892c742 in select () from /lib/libc.so.6
>>    #1  0x00007fb418caab2a in apr_sleep (t=100000) at time/unix/ 
>> time.c:246
>>    #2  0x00007fb418c7aba5 in do_sleep (t=100000) at src/ 
>> switch_time.c:109
>>    #3  0x00007fb418c7ad95 in switch_sleep (t=100000) at
>>    src/switch_time.c:178
>>    #4  0x00007fb418c16b75 in pool_thread (thread=0x1417ff8,  
>> obj=0x0) at
>>    src/switch_core_memory.c:531
>>    #5  0x00007fb418ca8c01 in dummy_worker (opaque=0x1417ff8) at
>>    threadproc/unix/thread.c:138
>>    #6  0x00007fb417ff53ba in start_thread () from /lib/ 
>> libpthread.so.0
>>    #7  0x00007fb418933fcd in clone () from /lib/libc.so.6
>>    #8  0x0000000000000000 in ?? ()
>>
>>    Thread 4 (Thread 31264):
>>    #0  0x00007fb417ffbbc5 in __lll_unlock_wake () from
>>    /lib/libpthread.so.0
>>    #1  0x00007fb417ff85c9 in _L_unlock_56 () from /lib/ 
>> libpthread.so.0
>>    #2  0x00007fb417ff8206 in __pthread_mutex_unlock_usercnt () from
>>    /lib/libpthread.so.0
>>    #3  0x00007fb418ca12de in apr_thread_mutex_unlock  
>> (mutex=0x12b83d8) at
>>    locks/unix/thread_mutex.c:121
>>    #4  0x00007fb418c94b78 in apr_queue_trypush (queue=0x12b8398,
>>    data=0x12b4b60) at misc/apr_queue.c:242
>>    #5  0x00007fb418c0464a in switch_queue_trypush (queue=0x12b8398,
>>    data=0x12b4b60) at src/switch_apr.c:931
>>    #6  0x00007fb418c3dfe8 in switch_event_fire_detailed
>>    (file=0x7fb418d55ce0 "src/switch_xml.c", func=0x7fb418d562f0
>>    "switch_xml_open_root", line=1918, event=0x7fff211d0a58,
>>    user_data=0x0)
>>       at src/switch_event.c:1128
>>    #7  0x00007fb418c76a66 in switch_xml_open_root (reload=0 '\0',
>>    err=0x7fff211d1110) at src/switch_xml.c:1918
>>    #8  0x00007fb418c76b5e in switch_xml_init (pool=0x126aff8,
>>    err=0x7fff211d1110) at src/switch_xml.c:1945
>>    #9  0x00007fb418c2d78f in switch_core_init (flags=1,
>>    console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1231
>>    #10 0x00007fb418c2e02b in switch_core_init_and_modload (flags=1,
>>    console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1422
>>    #11 0x0000000000400ed7 in main (argc=1, argv=0x7fff211d1628) at
>>    main.c:97
>>
>>    Thread 3 (Thread 31288):
>>    #0  0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from
>>    /lib/libpthread.so.0
>>    #1  0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x14dbb08,
>>    mutex=0x14dbab8) at locks/unix/thread_cond.c:68
>>    #2  0x00007fb418c94c1f in apr_queue_pop (queue=0x14dba78,
>>    data=0x7fb41676c0b8) at misc/apr_queue.c:276
>>    #3  0x00007fb418c045ca in switch_queue_pop (queue=0x14dba78,
>>    data=0x7fb41676c0b8) at src/switch_apr.c:902
>>    #4  0x00007fb418c3ba5e in switch_event_thread (thread=0x1663ac8,
>>    obj=0x14dba78) at src/switch_event.c:289
>>    #5  0x00007fb418ca8c01 in dummy_worker (opaque=0x1663ac8) at
>>    threadproc/unix/thread.c:138
>>    #6  0x00007fb417ff53ba in start_thread () from /lib/ 
>> libpthread.so.0
>>    #7  0x00007fb418933fcd in clone () from /lib/libc.so.6
>>    #8  0x0000000000000000 in ?? ()
>>
>>    Thread 2 (Thread 31289):
>>    #0  0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from
>>    /lib/libpthread.so.0
>>    #1  0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x159fb18,
>>    mutex=0x159fac8) at locks/unix/thread_cond.c:68
>>    #2  0x00007fb418c94c1f in apr_queue_pop (queue=0x159fa88,
>>    data=0x7fb4167a80b8) at misc/apr_queue.c:276
>>    #3  0x00007fb418c045ca in switch_queue_pop (queue=0x159fa88,
>>    data=0x7fb4167a80b8) at src/switch_apr.c:902
>>    #4  0x00007fb418c3ba5e in switch_event_thread (thread=0x1663af8,
>>    obj=0x159fa88) at src/switch_event.c:289
>>    #5  0x00007fb418ca8c01 in dummy_worker (opaque=0x1663af8) at
>>    threadproc/unix/thread.c:138
>>    #6  0x00007fb417ff53ba in start_thread () from /lib/ 
>> libpthread.so.0
>>    #7  0x00007fb418933fcd in clone () from /lib/libc.so.6
>>    #8  0x0000000000000000 in ?? ()
>>
>>    Thread 1 (Thread 31287):
>>    #0  0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8,
>>    data=0x12b4b60) at misc/apr_queue.c:215
>>    #1  0x00007fb418c0464a in switch_queue_trypush  
>> (queue=0x7fb4168e45a8,
>>    data=0x12b4b60) at src/switch_apr.c:931
>>    #2  0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98,
>>    obj=0x12b8398) at src/switch_event.c:305
>>    #3  0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at
>>    threadproc/unix/thread.c:138
>>    #4  0x00007fb417ff53ba in start_thread () from /lib/ 
>> libpthread.so.0
>>    #5  0x00007fb418933fcd in clone () from /lib/libc.so.6
>>    #6  0x0000000000000000 in ?? ()
>>
>>    (gdb) thread apply all bt full
>>
>>    Thread 5 (Thread 31286):
>>    #0  0x00007fb41892c742 in select () from /lib/libc.so.6
>>    No symbol table info available.
>>    #1  0x00007fb418caab2a in apr_sleep (t=100000) at time/unix/ 
>> time.c:246
>>           tv = {tv_sec = 0, tv_usec = 88462}
>>    #2  0x00007fb418c7aba5 in do_sleep (t=100000) at src/ 
>> switch_time.c:109
>>    No locals.
>>    #3  0x00007fb418c7ad95 in switch_sleep (t=100000) at
>>    src/switch_time.c:178
>>    No locals.
>>    #4  0x00007fb418c16b75 in pool_thread (thread=0x1417ff8,  
>> obj=0x0) at
>>    src/switch_core_memory.c:531
>>           len = 0
>>    #5  0x00007fb418ca8c01 in dummy_worker (opaque=0x1417ff8) at
>>    threadproc/unix/thread.c:138
>>           thread = 0x1417ff8
>>    #6  0x00007fb417ff53ba in start_thread () from /lib/ 
>> libpthread.so.0
>>    No symbol table info available.
>>    #7  0x00007fb418933fcd in clone () from /lib/libc.so.6
>>    No symbol table info available.
>>    #8  0x0000000000000000 in ?? ()
>>    No symbol table info available.
>>
>>    Thread 4 (Thread 31264):
>>    #0  0x00007fb417ffbbc5 in __lll_unlock_wake () from
>>    /lib/libpthread.so.0
>>    No symbol table info available.
>>    #1  0x00007fb417ff85c9 in _L_unlock_56 () from /lib/ 
>> libpthread.so.0
>>    No symbol table info available.
>>    #2  0x00007fb417ff8206 in __pthread_mutex_unlock_usercnt () from
>>    /lib/libpthread.so.0
>>    No symbol table info available.
>>    #3  0x00007fb418ca12de in apr_thread_mutex_unlock  
>> (mutex=0x12b83d8) at
>>    locks/unix/thread_mutex.c:121
>>           status = 0
>>    #4  0x00007fb418c94b78 in apr_queue_trypush (queue=0x12b8398,
>>    data=0x12b4b60) at misc/apr_queue.c:242
>>           rv = 0
>>    #5  0x00007fb418c0464a in switch_queue_trypush (queue=0x12b8398,
>>    data=0x12b4b60) at src/switch_apr.c:931
>>           s = 0
>>    #6  0x00007fb418c3dfe8 in switch_event_fire_detailed
>>    (file=0x7fb418d55ce0 "src/switch_xml.c", func=0x7fb418d562f0
>>    "switch_xml_open_root", line=1918, event=0x7fff211d0a58,
>>    user_data=0x0)
>>       at src/switch_event.c:1128
>>           was = 0
>>           index = 0
>>           __PRETTY_FUNCTION__ = "switch_event_fire_detailed"
>>           __func__ = "switch_event_fire_detailed"
>>    #7  0x00007fb418c76a66 in switch_xml_open_root (reload=0 '\0',
>>    err=0x7fff211d1110) at src/switch_xml.c:1918
>>           event = 0x12b4b60
>>           path_buf =
>>    "/opt/freeswitch/conf/freeswitch.xml 
>> \0\0\0\0\0\340\33\"\1\0\0\0\0\0\320\34\31\264\177\0\0)'\214\30\264\177\0\0\6\0\0\0\b\0\0\1\200\247\273\30\264\177\0\0\0\0\0\0\0\0\0\0\340\33\"\1\0\0\0\0O\0\0\0\0\0\0\0\271\24\214\0\0\4\0\0`\6\35!\377\177\0\0@\16\35!\377\177\0\0\340\33\"\1\0\0\0\0\0\272\273\30\264\177\0\0p\r\35!\377\177\0\0`\v@\0\0\0\0\0
>>    \26\35!\377\177", '\0' <repeats 18 times>,
>>    "v\202\214\30\264\177\0\0\71\0\0\0\0\0\0\0\224\t 
>> \307 
>> \30 
>> \264 
>> \177 
>> \0 
>> \0 
>> \65 
>> \2 
>> \0 
>> \0 
>> \60 
>> \0 
>> \0 
>> \0 
>> \200 
>> \0 
>> \0 
>> \0\377\177\0\0\6\0\325\30\264\177\0\0\263\352\16\0\377\177\0\0\320\v 
>> \35!\377"...
>>           hasmain = 0 '\0'
>>           errcnt = 0 '\0'
>>           new_main = 0x1221ca0
>>           r = 0x0
>>           __func__ = "switch_xml_open_root"
>>    #8  0x00007fb418c76b5e in switch_xml_init (pool=0x126aff8,
>>    err=0x7fff211d1110) at src/switch_xml.c:1945
>>           xml = 0x12b8338
>>           __PRETTY_FUNCTION__ = "switch_xml_init"
>>    ---Type <return> to continue, or q <return> to quit---
>>    #9  0x00007fb418c2d78f in switch_core_init (flags=1,
>>    console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1231
>>           uuid = {data = "\0\0\0\0\0\0\0\0\200\247\273\30\264\177\0"}
>>           guess_ip = "::1\0\61\66\70.69.69", '\0' <repeats 187
>>    times>"\331,
>>    _ 
>> \222 
>> \30 
>> \264 
>> \177 
>> \0\0\0\0\0\0\0\0\0\0\25\0\0\0\0\0\0\0\0\320\34\31\264\177\0\0\25",
>>    '\0' <repeats 15 times>, "J\30\214\30\264\177\0"
>>           dir_path = 0x0
>>           mask = 16777215
>>           in = {s_addr = 16777215}
>>           __PRETTY_FUNCTION__ = "switch_core_init"
>>    #10 0x00007fb418c2e02b in switch_core_init_and_modload (flags=1,
>>    console=SWITCH_TRUE, err=0x7fff211d1110) at src/switch_core.c:1422
>>           event = 0x400b60
>>           __func__ = "switch_core_init_and_modload"
>>    #11 0x0000000000400ed7 in main (argc=1, argv=0x7fff211d1628) at
>>    main.c:97
>>           flags = 1
>>           err = 0x7fb418d56314 "Success"
>>           console = SWITCH_TRUE
>>           destroy_status = SWITCH_STATUS_SUCCESS
>>           ret = 0
>>           __PRETTY_FUNCTION__ = "main"
>>
>>    Thread 3 (Thread 31288):
>>    #0  0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from
>>    /lib/libpthread.so.0
>>    No symbol table info available.
>>    #1  0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x14dbb08,
>>    mutex=0x14dbab8) at locks/unix/thread_cond.c:68
>>           rv = 0
>>    #2  0x00007fb418c94c1f in apr_queue_pop (queue=0x14dba78,
>>    data=0x7fb41676c0b8) at misc/apr_queue.c:276
>>           rv = 0
>>    #3  0x00007fb418c045ca in switch_queue_pop (queue=0x14dba78,
>>    data=0x7fb41676c0b8) at src/switch_apr.c:902
>>    No locals.
>>    #4  0x00007fb418c3ba5e in switch_event_thread (thread=0x1663ac8,
>>    obj=0x14dba78) at src/switch_event.c:289
>>           pop = 0x0
>>           event = 0x0
>>           queue = 0x14dba78
>>           index = 0
>>           my_id = 1
>>           __func__ = "switch_event_thread"
>>    #5  0x00007fb418ca8c01 in dummy_worker (opaque=0x1663ac8) at
>>    threadproc/unix/thread.c:138
>>           thread = 0x1663ac8
>>    #6  0x00007fb417ff53ba in start_thread () from /lib/ 
>> libpthread.so.0
>>    No symbol table info available.
>>    #7  0x00007fb418933fcd in clone () from /lib/libc.so.6
>>    No symbol table info available.
>>    #8  0x0000000000000000 in ?? ()
>>    No symbol table info available.
>>
>>    Thread 2 (Thread 31289):
>>    #0  0x00007fb417ff92e9 in pthread_cond_wait@@GLIBC_2.3.2 () from
>>    /lib/libpthread.so.0
>>    No symbol table info available.
>>    #1  0x00007fb418ca13ef in apr_thread_cond_wait (cond=0x159fb18,
>>    mutex=0x159fac8) at locks/unix/thread_cond.c:68
>>           rv = 0
>>    #2  0x00007fb418c94c1f in apr_queue_pop (queue=0x159fa88,
>>    data=0x7fb4167a80b8) at misc/apr_queue.c:276
>>           rv = 0
>>    #3  0x00007fb418c045ca in switch_queue_pop (queue=0x159fa88,
>>    data=0x7fb4167a80b8) at src/switch_apr.c:902
>>    No locals.
>>    #4  0x00007fb418c3ba5e in switch_event_thread (thread=0x1663af8,
>>    obj=0x159fa88) at src/switch_event.c:289
>>    ---Type <return> to continue, or q <return> to quit---
>>           pop = 0x0
>>           event = 0x0
>>           queue = 0x159fa88
>>           index = 0
>>           my_id = 2
>>           __func__ = "switch_event_thread"
>>    #5  0x00007fb418ca8c01 in dummy_worker (opaque=0x1663af8) at
>>    threadproc/unix/thread.c:138
>>           thread = 0x1663af8
>>    #6  0x00007fb417ff53ba in start_thread () from /lib/ 
>> libpthread.so.0
>>    No symbol table info available.
>>    #7  0x00007fb418933fcd in clone () from /lib/libc.so.6
>>    No symbol table info available.
>>    #8  0x0000000000000000 in ?? ()
>>    No symbol table info available.
>>
>>    Thread 1 (Thread 31287):
>>    #0  0x00007fb418c94a7f in apr_queue_trypush (queue=0x7fb4168e45a8,
>>    data=0x12b4b60) at misc/apr_queue.c:215
>>           rv = 0
>>    #1  0x00007fb418c0464a in switch_queue_trypush  
>> (queue=0x7fb4168e45a8,
>>    data=0x12b4b60) at src/switch_apr.c:931
>>           s = 0
>>    #2  0x00007fb418c3bab8 in switch_event_thread (thread=0x1663a98,
>>    obj=0x12b8398) at src/switch_event.c:305
>>           pop = 0x12b4b60
>>           event = 0x12b4b60
>>           queue = 0x12b8398
>>           index = 0
>>           my_id = 0
>>           __func__ = "switch_event_thread"
>>    #3  0x00007fb418ca8c01 in dummy_worker (opaque=0x1663a98) at
>>    threadproc/unix/thread.c:138
>>           thread = 0x1663a98
>>    #4  0x00007fb417ff53ba in start_thread () from /lib/ 
>> libpthread.so.0
>>    No symbol table info available.
>>    #5  0x00007fb418933fcd in clone () from /lib/libc.so.6
>>    No symbol table info available.
>>    #6  0x0000000000000000 in ?? ()
>>    No symbol table info available.
>>
>>
>>    FS svn r14092, gcc-4.3.3, x86_64
>>
>>    Any idea what should I add to free up everything after shutdown
>>    and lets
>>    start with "blank list"?
>>
>>    Thanks in advance,
>>       Tamas
>>
>>
>>    _______________________________________________
>>    Freeswitch-dev mailing list
>>    Freeswitch-dev at lists.freeswitch.org
>>    <mailto:Freeswitch-dev at lists.freeswitch.org>
>>    http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
>>    UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
>>    http://www.freeswitch.org
>>
>>
>>
>>
>> -- 
>> Anthony Minessale II
>>
>> FreeSWITCH http://www.freeswitch.org/
>> ClueCon http://www.cluecon.com/
>>
>> AIM: anthm
>> MSN:anthony_minessale at hotmail.com
>> <mailto:MSN%3Aanthony_minessale at hotmail.com>
>> GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
>> <mailto:PAYPAL%3Aanthony.minessale at gmail.com>
>> IRC: irc.freenode.net <http://irc.freenode.net> #freeswitch
>>
>> FreeSWITCH Developer Conference
>> sip:888 at conference.freeswitch.org
>> <mailto:sip%3A888 at conference.freeswitch.org>
>> iax:guest at conference.freeswitch.org/888
>> <http://iax:guest@conference.freeswitch.org/888>
>> googletalk:conf+888 at conference.freeswitch.org
>> <mailto:googletalk%3Aconf%2B888 at conference.freeswitch.org>
>> pstn:213-799-1400
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Freeswitch-dev mailing list
>> Freeswitch-dev at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch- 
>> dev
>> http://www.freeswitch.org
>>
>
>
> _______________________________________________
> Freeswitch-dev mailing list
> Freeswitch-dev at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
> http://www.freeswitch.org




More information about the Freeswitch-dev mailing list