[OpenSIPS-Users] 1.6 core dump uac_replace_to and uac_replace_from

Thomas Gelf thomas at gelf.net
Thu Oct 22 11:12:07 CEST 2009


Hi Bogdan,

do you have any idea what Brad is doing different than I do? As I'm also
intensively using both functions (alone and together, depends on call
direction), I'm a little bit concerned. However, I did not (yet) meet
those crashes...

Cheers,
Thomas

NB: I'm using those functions only in branch routes.
NBB: I'm running on a 64bit system and PKG_MEM_POOL_SIZE 4*1024*1024

Bogdan-Andrei Iancu wrote:
> Brad,
> 
> Please apply the attached patch and see if it's fixing the problem for you.
> 
> Regards,
> Bogdan
> 
> Brad Bendy wrote:
>> #0  0x0000000801517b39 in pre_print_uac_request (t=0x802976678,
>> branch=1, request=0x801647020) at t_fwd.c:132
>> 132                             memcpy( p, request->dst_uri.s,
>> request->dst_uri.len);
>>
>>
>> $2 = (struct sip_msg *) 0x801647020
>> (gdb) print request->dst_uri
>> $3 = {s = 0x0, len = -1}
>>
>> I see len = -1, so basically a value must be null when im using one of
>> these functions? From the logging ive had setup I have seen no empty
>> or weird values, but I can check again as well.
>>
>> Thanks
>>
>> That's what I got back.
>>
>> Thanks
>>
>> Bogdan-Andrei Iancu wrote:
>>> Brad,
>>>
>>> in gdb, just do:
>>>
>>> f 0
>>> print request
>>> print request->dst_uri
>>>
>>> Regards,
>>> Bogdan
>>>
>>> Brad Bendy wrote:
>>>  
>>>> Hi Bogdan,
>>>>
>>>> Well, sometimes we do, sometimes we only call or the other, 90% of
>>>> the time we use both on the same call.
>>>>
>>>> I do still have the core, inside of gdb do I need to run a command?
>>>>
>>>> When I run "bt", frame 0 shows: #0  0x0000000801517b39 in
>>>> pre_print_uac_request (t=0x802976678, branch=1, request=0x801647020)
>>>> at t_fwd.c:132
>>>>
>>>> Thanks
>>>>
>>>> Bogdan-Andrei Iancu wrote:
>>>>    
>>>>> Hi Brad,
>>>>>
>>>>> Do you use both replace_to and replace_from in the same time ?
>>>>>
>>>>> Do you still have the core file ? could you check in frame 0 for
>>>>> "request"  and  "request->dst_uri" ?
>>>>>
>>>>> Thanks and regards,
>>>>> Bogdan
>>>>>
>>>>> Brad Bendy wrote:
>>>>>        
>>>>>> Hi,
>>>>>>
>>>>>> Running 1.6 non SVN we are getting random crashes, it appears this
>>>>>> is from the uac_replace_from and uac_replace_to, we did not have
>>>>>> this problem until we started using these function. Below is the
>>>>>> bt from gdb.
>>>>>>
>>>>>> The only errors we get in the logs are from memcache, which I
>>>>>> think are unrelated from this, has anyone else seen this issue? I
>>>>>> can try the latest SVN tonight and see how if that fixes it.
>>>>>>
>>>>>> Thanks for any help or suggestions.
>>>>>>
>>>>>> #0  0x0000000801517b39 in pre_print_uac_request (t=0x802a18bf8,
>>>>>> branch=1, request=0x801647020) at t_fwd.c:132
>>>>>> 132                             memcpy( p, request->dst_uri.s,
>>>>>> request->dst_uri.len);
>>>>>>
>>>>>>
>>>>>>
>>>>>> #0  0x0000000801517b39 in pre_print_uac_request (t=0x802a18bf8,
>>>>>> branch=1, request=0x801647020) at t_fwd.c:132
>>>>>> #1  0x0000000801518092 in add_uac (t=0x802a18bf8,
>>>>>> request=0x801647020, uri=0x7fffffffd0d0,
>>>>>>     next_hop=0x7fffffffd0e0, path=Variable "path" is not available.
>>>>>> ) at t_fwd.c:400
>>>>>> #2  0x0000000801519bda in t_forward_nonack (t=0x802a18bf8,
>>>>>> p_msg=0x801647020, proxy=0x0) at t_fwd.c:625
>>>>>> #3  0x0000000801531d1e in w_t_relay (p_msg=0x801647020, proxy=0x0,
>>>>>> flags=Variable "flags" is not available.
>>>>>> ) at tm.c:1101
>>>>>> #4  0x000000000040d9d1 in do_action (a=0x6c7a78, msg=0x801647020)
>>>>>> at action.c:962
>>>>>> #5  0x000000000040c707 in run_action_list (a=Variable "a" is not
>>>>>> available.
>>>>>> ) at action.c:139
>>>>>> #6  0x0000000000465b69 in eval_expr (e=0x6c7b48, msg=0x801647020,
>>>>>> val=0x0) at route.c:1240
>>>>>> #7  0x000000000046584e in eval_expr (e=0x6c7b90, msg=0x801647020,
>>>>>> val=0x0) at route.c:1553
>>>>>> #8  0x0000000000465869 in eval_expr (e=0x6c7bd8, msg=0x801647020,
>>>>>> val=0x0) at route.c:1558
>>>>>> #9  0x000000000040e0c7 in do_action (a=0x6c7d80, msg=0x801647020)
>>>>>> at action.c:689
>>>>>> #10 0x000000000040c707 in run_action_list (a=Variable "a" is not
>>>>>> available.
>>>>>> ) at action.c:139
>>>>>> #11 0x000000000040eee5 in do_action (a=0x6f2310, msg=0x801647020)
>>>>>> at action.c:119
>>>>>> #12 0x000000000040c707 in run_action_list (a=Variable "a" is not
>>>>>> available.
>>>>>> ) at action.c:139
>>>>>> #13 0x000000000040fc6c in do_action (a=0x6f24b0, msg=0x801647020)
>>>>>> at action.c:706
>>>>>> #14 0x000000000040c707 in run_action_list (a=Variable "a" is not
>>>>>> available.
>>>>>> ) at action.c:139
>>>>>> #15 0x0000000000410ce8 in run_top_route (a=0x6f1d28,
>>>>>> msg=0x801647020) at action.c:119
>>>>>> #16 0x0000000801529a4d in t_should_relay_response
>>>>>> (Trans=0x802a18bf8, new_code=Variable "new_code" is not available.
>>>>>> ) at t_reply.c:612
>>>>>> #17 0x000000080152b5f6 in relay_reply (t=0x802a18bf8,
>>>>>> p_msg=0x71f3b0, branch=0, msg_status=503,
>>>>>> cancel_bitmap=dwarf2_read_address: Corrupted DWARF expression.
>>>>>> )
>>>>>>     at t_reply.c:1124
>>>>>> #18 0x000000080152cc76 in reply_received (p_msg=0x71f3b0) at
>>>>>> t_reply.c:1493
>>>>>> #19 0x0000000000420d77 in forward_reply (msg=0x71f3b0) at
>>>>>> forward.c:559
>>>>>> #20 0x00000000004551d5 in receive_msg (
>>>>>>     buf=0x659e40 "SIP/2.0 503 Service Unavailable\r\nVia:
>>>>>> SIP/2.0/UDP
>>>>>> 72.44.195.164:5060;branch=z9hG4bK8ac3.4b441ca2.0\r\nVia:
>>>>>> SIP/2.0/UDP
>>>>>> 68.165.121.51:5060;branch=z9hG4bK8ac3.9b5220d1.1\r\nVia:
>>>>>> SIP/2.0/UDP xx.xx.xx.xx:50"...,
>>>>>>     len=665, rcv_info=0x7fffffffeac0) at receive.c:200
>>>>>> #21 0x0000000000499297 in udp_rcv_loop () at udp_server.c:492
>>>>>> #22 0x000000000042865a in main (argc=3, argv=Variable "argv" is
>>>>>> not available.
>>>>>>           
> 


-- 
 mail: thomas at gelf.net
  web: http://thomas.gelf.net/




More information about the Users mailing list