Realized I got variables from the wrong frame. (gdb) print p $1 = (ua_pres_t *) 0x2aba902bfb00 (gdb) print *p $2 = {hash_index = 305, local_index = 0, id = {s = 0x2aba902bfc44 "DIALOG_PUBLISHb\374+\220\272*", len = 14}, pres_uri = 0x2aba902bfc18, event = 64, expires = 1322593862, desired_expires = 1322593633, flag = 1024, db_flag = 0, next = 0x0, ua_flag = 0, etag = {s = 0x2aba9024ccf8 "a.1322544815.24201.3244.293:60604.11", len = 26}, tuple_id = {s = 0x0, len = 0}, waiting_reply = 0, pending_publ = 0x0, to_uri = {s = 0x0, len = 0}, watcher_uri = 0x0, call_id = {s = 0x0, len = 0}, to_tag = {s = 0x0, len = 0}, from_tag = { s = 0x0, len = 0}, cseq = 0, version = 29, watcher_count = 0, outbound_proxy = 0x2aba902bfc52, extra_headers = 0x0, record_route = {s = 0x0, len = 0}, remote_contact = {s = 0x0, len = 0}, contact = { s = 0x0, len = 0}, cb_param = 0x0} (gdb) print *p->pres_uri $3 = {s = 0x2aba902bfc28 "sip:17134608801@208.90.184.3DIALOG_PUBLISHb\374+\220\272*", len = 28} (gdb) print p->pres_uri $4 = (str *) 0x2aba902bfc18 (gdb) print *p->watcher_uri Cannot access memory at address 0x0 (gdb) print p->call_id $5 = {s = 0x0, len = 0} (gdb) print p->to_tag $6 = {s = 0x0, len = 0} (gdb) print p->from_tag $7 = {s = 0x0, len = 0}
-- James On Tue, Nov 29, 2011 at 2:16 PM, James Lamanna <jlama...@gmail.com> wrote: > Here's probably a more telling BT (Debug=3) > > #0 0x00002aba8e563f33 in get_dialog (dialog=0x7fff59e5b5d0, > hash_code=<value optimized out>) at hash.c:480 > 480 if((p->watcher_uri->len== > dialog->watcher_uri->len) && > (gdb) bt > #0 0x00002aba8e563f33 in get_dialog (dialog=0x7fff59e5b5d0, > hash_code=<value optimized out>) at hash.c:480 > #1 0x00002aba8e565108 in update_contact (msg=<value optimized out>, > str1=<value optimized out>, str2=<value optimized out>) at hash.c:666 > #2 0x0000000000411ccc in do_action (a=0x7c5378, msg=0x7ef758) at > action.c:1195 > #3 0x000000000041040e in run_action_list (a=<value optimized out>, > msg=0x7ef758) at action.c:140 > #4 0x00000000004145aa in do_action (a=0x7c6cc0, msg=0x7ef758) at action.c:825 > #5 0x000000000041040e in run_action_list (a=<value optimized out>, > msg=0x7ef758) at action.c:140 > #6 0x00000000004138a8 in run_actions (a=0x7b5fe0, msg=0x7ef758) at > action.c:120 > #7 do_action (a=0x7b5fe0, msg=0x7ef758) at action.c:488 > #8 0x000000000041040e in run_action_list (a=<value optimized out>, > msg=0x7ef758) at action.c:140 > #9 0x0000000000413c62 in do_action (a=0x7b6190, msg=0x7ef758) at action.c:819 > #10 0x000000000041040e in run_action_list (a=<value optimized out>, > msg=0x7ef758) at action.c:140 > #11 0x00000000004145aa in do_action (a=0x7b6268, msg=0x7ef758) at action.c:825 > #12 0x000000000041040e in run_action_list (a=<value optimized out>, > msg=0x7ef758) at action.c:140 > #13 0x00000000004145aa in do_action (a=0x7b6f68, msg=0x7ef758) at action.c:825 > #14 0x000000000041040e in run_action_list (a=<value optimized out>, > msg=0x7ef758) at action.c:140 > #15 0x0000000000413c62 in do_action (a=0x7b7118, msg=0x7ef758) at action.c:819 > #16 0x000000000041040e in run_action_list (a=<value optimized out>, > msg=0x7ef758) at action.c:140 > #17 0x0000000000415886 in run_actions (a=0x7b0d00, msg=0x7ef758) at > action.c:120 > #18 run_top_route (a=0x7b0d00, msg=0x7ef758) at action.c:181 > #19 0x000000000046f21c in receive_msg ( > buf=0x77cbc0 "NOTIFY sip:208.90.184.11;lr SIP/2.0\r\nVia: > SIP/2.0/UDP 208.90.184.11;branch=z9hG4bKaff5.56547fb7.0\r\nVia: > SIP/2.0/UDP > 208.90.184.6;rport=5060;received=208.90.184.6;branch=z9hG4bKaff5.20317c76.0\r\nTo: > <si"..., len=713, rcv_info=0x7fff59e5d7b0) at receive.c:162 > #20 0x00000000004c2f3c in udp_rcv_loop () at udp_server.c:492 > #21 0x000000000042e785 in main_loop (argc=<value optimized out>, > argv=<value optimized out>) at main.c:824 > #22 main (argc=<value optimized out>, argv=<value optimized out>) at > main.c:1393 > > > And variables: > > (gdb) frame 1 > #1 0x00002aba8e565108 in update_contact (msg=<value optimized out>, > str1=<value optimized out>, str2=<value optimized out>) at hash.c:666 > 666 p= get_dialog(&hentity, hash_code); > (gdb) print p > $1 = <value optimized out> > (gdb) print *p > Cannot access memory at address 0x0 > (gdb) print *p->pres_uri > Cannot access memory at address 0x18 > (gdb) print p->pres_uri > Cannot access memory at address 0x18 > (gdb) print *p->watcher_uri > Cannot access memory at address 0x88 > (gdb) print p->call_id > Cannot access memory at address 0x90 > (gdb) print p->to_tag > Cannot access memory at address 0xa0 > (gdb) print p->from_tag > Cannot access memory at address 0xb0 > > -- James > On Tue, Nov 29, 2011 at 2:20 AM, Bogdan-Andrei Iancu > <bog...@opensips.org> wrote: >> Hi James, >> >> It seams that the crash is because of a bogus debug message - do you run >> opensips in full debug mode (debug=6) ? >> >> Anyhow, in gdb, please switch to frame #1 and print the following values: >> p >> *p >> *p->pres_uri >> p->pres_uri >> *p->watcher_uri >> p->call_id >> p->to_tag >> p->from_tag >> >> Thanks and regards, >> Bogdan >> >> On 11/28/2011 09:31 PM, James Lamanna wrote: >>> >>> On Mon, Nov 28, 2011 at 12:00 AM, Bogdan-Andrei Iancu >>> <bog...@opensips.org> wrote: >>>> >>>> Hi James, >>>> >>>> The relevant part is: >>>> >>>> Nov 27 18:04:22 opensips2 >>>> /usr/local/sbin/opensips[7275]:INFO:core:handle_sigs: child process 7281 >>>> exited by a signal 11 >>>> Nov 27 18:04:22 opensips2 >>>> /usr/local/sbin/opensips[7275]:INFO:core:handle_sigs: core was generated >>>> >>>> As a core file was generate, could you extract the backtrace from it ? ( >>>> use >>>> gdb as "gdb path_to_opensips_bin path_to_core_file" and run in there >>>> "bt"). >>> >>> HI Bogdan, >>> Here you go: >>> >>> Core was generated by `/usr/local/sbin/opensips -P >>> /var/run/opensips.pid -f /usr/local/etc/opensips/op'. >>> Program terminated with signal 11, Segmentation fault. >>> #0 0x00002b79331550c4 in syslog (dialog=0x7fff301988b0, >>> hash_code=<value optimized out>) at /usr/include/bits/syslog.h:32 >>> 32 return __syslog_chk (__pri, __USE_FORTIFY_LEVEL - 1, __fmt, >>> __va_arg_pack ()); >>> (gdb) bt >>> #0 0x00002b79331550c4 in syslog (dialog=0x7fff301988b0, >>> hash_code=<value optimized out>) at /usr/include/bits/syslog.h:32 >>> #1 get_dialog (dialog=0x7fff301988b0, hash_code=<value optimized >>> out>) at hash.c:471 >>> #2 0x00002b7933156108 in update_contact (msg=<value optimized out>, >>> str1=<value optimized out>, str2=<value optimized out>) at hash.c:666 >>> #3 0x0000000000411ccc in do_action (a=0x7c5358, msg=0x7ef7e8) at >>> action.c:1195 >>> #4 0x000000000041040e in run_action_list (a=<value optimized out>, >>> msg=0x7ef7e8) at action.c:140 >>> #5 0x00000000004145aa in do_action (a=0x7c6ca0, msg=0x7ef7e8) at >>> action.c:825 >>> #6 0x000000000041040e in run_action_list (a=<value optimized out>, >>> msg=0x7ef7e8) at action.c:140 >>> #7 0x00000000004138a8 in run_actions (a=0x7b5fc0, msg=0x7ef7e8) at >>> action.c:120 >>> #8 do_action (a=0x7b5fc0, msg=0x7ef7e8) at action.c:488 >>> #9 0x000000000041040e in run_action_list (a=<value optimized out>, >>> msg=0x7ef7e8) at action.c:140 >>> #10 0x0000000000413c62 in do_action (a=0x7b6170, msg=0x7ef7e8) at >>> action.c:819 >>> #11 0x000000000041040e in run_action_list (a=<value optimized out>, >>> msg=0x7ef7e8) at action.c:140 >>> #12 0x00000000004145aa in do_action (a=0x7b6248, msg=0x7ef7e8) at >>> action.c:825 >>> #13 0x000000000041040e in run_action_list (a=<value optimized out>, >>> msg=0x7ef7e8) at action.c:140 >>> #14 0x00000000004145aa in do_action (a=0x7b6f48, msg=0x7ef7e8) at >>> action.c:825 >>> #15 0x000000000041040e in run_action_list (a=<value optimized out>, >>> msg=0x7ef7e8) at action.c:140 >>> #16 0x0000000000413c62 in do_action (a=0x7b70f8, msg=0x7ef7e8) at >>> action.c:819 >>> #17 0x000000000041040e in run_action_list (a=<value optimized out>, >>> msg=0x7ef7e8) at action.c:140 >>> #18 0x0000000000415886 in run_actions (a=0x7b0ce0, msg=0x7ef7e8) at >>> action.c:120 >>> #19 run_top_route (a=0x7b0ce0, msg=0x7ef7e8) at action.c:181 >>> #20 0x000000000046f21c in receive_msg ( >>> buf=0x77cba0 "NOTIFY sip"..., len=0, rcv_info=0x7fff3019aa90) at >>> receive.c:162 >>> #21 0x00000000004c2f3c in udp_rcv_loop () at udp_server.c:492 >>> #22 0x000000000042e785 in main_loop (argc=<value optimized out>, >>> argv=<value optimized out>) at main.c:824 >>> #23 main (argc=<value optimized out>, argv=<value optimized out>) at >>> main.c:1393 >>> >>> -- James >>> >>>> Regards, >>>> Bogdan >>>> >>>> On 11/28/2011 04:22 AM, James Lamanna wrote: >>>>> >>>>> Hi, >>>>> I'm experiencing a crash after about 5 minutes on a system (same >>>>> config works fine on other systems). >>>>> This is a system running under OpenVZ. >>>>> Here's the tail end of syslog: >>>>> >>>>> >>>>> Nov 27 18:04:18 opensips2 /usr/local/sbin/opensips[7280]: >>>>> DBG:tm:matching_3261: RFC3261 transaction matched, tid=6332.a2d6e8d7.0 >>>>> Nov 27 18:04:18 opensips2 /usr/local/sbin/opensips[7280]: >>>>> DBG:tm:t_lookup_request: REF_UNSAFE:[0x2b835e4a4f98] after is 1 >>>>> Nov 27 18:04:18 opensips2 /usr/local/sbin/opensips[7280]: >>>>> DBG:tm:t_lookup_request: transaction found (T=0x2b835e4a4f98) >>>>> Nov 27 18:04:18 opensips2 /usr/local/sbin/opensips[7280]: >>>>> DBG:tm:t_retransmit_reply: nothing to retransmit >>>>> Nov 27 18:04:18 opensips2 /usr/local/sbin/opensips[7280]: >>>>> DBG:tm:t_unref: UNREF_UNSAFE: [0x2b835e4a4f98] after is 0 >>>>> Nov 27 18:04:18 opensips2 /usr/local/sbin/opensips[7280]: >>>>> DBG:core:destroy_avp_list: destroying list (nil) >>>>> Nov 27 18:04:18 opensips2 /usr/local/sbin/opensips[7280]: >>>>> DBG:core:receive_msg: cleaning up >>>>> Nov 27 18:04:18 opensips2 /usr/local/sbin/opensips[7285]: >>>>> DBG:core:udp_rcv_loop: probing packet received len = 4 >>>>> Nov 27 18:04:19 opensips2 /usr/local/sbin/opensips[7286]: >>>>> DBG:core:udp_rcv_loop: probing packet received len = 4 >>>>> Nov 27 18:04:19 opensips2 /usr/local/sbin/opensips[7286]: >>>>> DBG:core:udp_rcv_loop: probing packet received len = 4 >>>>> Nov 27 18:04:20 opensips2 /usr/local/sbin/opensips[7284]: >>>>> DBG:core:udp_rcv_loop: probing packet received len = 4 >>>>> Nov 27 18:04:21 opensips2 /usr/local/sbin/opensips[7285]: >>>>> DBG:core:udp_rcv_loop: probing packet received len = 4 >>>>> Nov 27 18:04:22 opensips2 /usr/local/sbin/opensips[7296]: >>>>> CRITICAL:core:receive_fd: EOF on 12 >>>>> Nov 27 18:04:22 opensips2 /usr/local/sbin/opensips[7296]: >>>>> DBG:core:handle_ser_child: dead child 5, pid 7281 (shutting down?) >>>>> Nov 27 18:04:22 opensips2 /usr/local/sbin/opensips[7296]: >>>>> DBG:core:io_watch_del: io_watch_del (0x76c500, 12, -1, 0x0) fd_no=21 >>>>> called >>>>> Nov 27 18:04:22 opensips2 /usr/local/sbin/opensips[7275]: >>>>> INFO:core:handle_sigs: child process 7281 exited by a signal 11 >>>>> Nov 27 18:04:22 opensips2 /usr/local/sbin/opensips[7275]: >>>>> INFO:core:handle_sigs: core was generated >>>>> Nov 27 18:04:22 opensips2 /usr/local/sbin/opensips[7275]: >>>>> INFO:core:handle_sigs: terminating due to SIGCHLD >>>>> >>>>> Any ideas? >>>>> >>>>> Thanks. >>>>> >>>>> -- James >>>>> >>>>> _______________________________________________ >>>>> Users mailing list >>>>> Users@lists.opensips.org >>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users >>>>> >>>> >>>> -- >>>> Bogdan-Andrei Iancu >>>> OpenSIPS Founder and Developer >>>> OpenSIPS solutions and "know-how" >>>> >>>> >> >> >> -- >> Bogdan-Andrei Iancu >> OpenSIPS Founder and Developer >> OpenSIPS solutions and "know-how" >> >> > _______________________________________________ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users