Pool Crashes?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Norman Franke wrote:
> I've been experiencing a large number of crashes in PJSIP of late (using 
> the latest SVN head.) I never seemed to have these issues with 0.6. All 
> crashes seem all revolve around using the pools. The latest is here:

What if you
  #define PJ_SAFE_POOL 1
in your config_site.h?

This will not make the crash go away, but it will assert when the 
pool is destroyed more than once (btw I assume you enabled assertion 
in your build).

cheers,
  -benny


> #0 0x002556cc in pj_link_node at list_i.h:24
> #1 0x002558c4 in pj_list_erase at list_i.h:77
> #2 0x002891b0 in reset_pool at pool.c:239
> #3 0x002892b4 in pj_pool_destroy_int at pool.c:275
> #4 0x002c7510 in cpool_release_pool at pool_caching.c:233
> #5 0x00288b68 in pj_pool_release at pool_i.h:91
> #6 0x0025bfe0 in pjsip_endpt_release_pool at sip_endpoint.c:641
> #7 0x002adb34 in destroy_dialog at sip_dialog.c:115
> #8 0x002af820 in unregister_and_destroy_dialog at sip_dialog.c:700
> #9 0x002afd98 in pjsip_dlg_dec_lock at sip_dialog.c:831
> #10 0x002b2718 in pjsip_dlg_on_tsx_state at sip_dialog.c:1804
> #11 0x00263058 in mod_ua_on_tsx_state at sip_ua_layer.c:177
> #12 0x002b858c in tsx_set_state at sip_transaction.c:1081
> #13 0x002bc238 in tsx_on_state_completed_uac at sip_transaction.c:2780
> #14 0x002b830c in tsx_timer_callback at sip_transaction.c:1028
> #15 0x002a47b4 in pj_timer_heap_poll at timer.c:517
> #16 0x0025c070 in pjsip_endpt_handle_events2 at sip_endpoint.c:665
> #17 0x0026c93c in pjsua_handle_events at pjsua_core.c:1131
> #18 0x0026ad20 in worker_thread at pjsua_core.c:494
> #19 0x002584f4 in thread_main at os_core_unix.c:382
> #20 0x9002bd08 in _pthread_body
> 
> Another (non-debug build, sadly. Seems to be about the same thing.)
> 
> #0 0x00264fdc in pj_list_erase
> #1 0x00288940 in reset_pool
> #2 0x002889f0 in pj_pool_destroy_int
> #3 0x002a97c8 in cpool_release_pool
> #4 0x0029c008 in unregister_and_destroy_dialog
> #5 0x0029c140 in pjsip_dlg_dec_lock
> #6 0x002a1328 in tsx_set_state
> #7 0x002a2cb8 in tsx_on_state_completed_uac
> #8 0x002a11b4 in tsx_timer_callback
> #9 0x00297224 in pj_timer_heap_poll
> #10 0x0026820c in pjsip_endpt_handle_events2
> #11 0x0027082c in pjsua_handle_events
> #12 0x00270888 in worker_thread
> #13 0x00266e8c in thread_main
> #14 0x9002b508 in _pthread_body
> 
>  From the first one:
> 
> /* Internal */
> PJ_INLINE(void) pj_link_node(pj_list_type *prev, pj_list_type *next)
> {
>     ((pj_list*)prev)->next = next;
>     ((pj_list*)next)->prev = prev;
> }
> 
> In this case, prev is null. My code never uses dialog pools.
> 
> Any ideas?
> 
> -Norman




[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux