[OpenSIPS-Users] troubleshooting memory problems

Richard Revels rrevels at bandwidth.com
Thu May 27 23:59:34 CEST 2010


make realclean did it.  Thank you.  I'll add that to my "stuff kinda good to remember" list.  I was tempted to go back and make sure I hadn't imagined doing a make clean the first time around but not all that tempted.  : >

Richard

On May 27, 2010, at 12:22 PM, Ovidiu Sas wrote:

> Try 'make realclean' before a 'make install'.  This should clean up
> completely the repo.
> 
> Regards,
> Ovidiu Sas
> 
> On Thu, May 27, 2010 at 11:45 AM, Richard Revels <rrevels at bandwidth.com> wrote:
>> Yep.  Did a make clean and make all before make install.  I think its a little deeper than that.
>> 
>> 
>> On May 27, 2010, at 11:30 AM, Bogdan-Andrei Iancu wrote:
>> 
>>> Richard Revels wrote:
>>>> I got an error when starting up with only qm_malloc enabled.  Was planning to mention that a little later.  Yeah, I should have gone a bit deeper to get the memory pointer that is alloc'd / free'd but am using this as a starting point.  I'll go through the wiki steps over the weekend.
>>>> 
>>>> opensips: ERROR:core:version_control: module compile flags mismatch for avpops
>>>> 
>>> ^^^^^^ be sure you recompile all modules and core !!!
>>> 
>>>> #012core: STATS: Off, USE_IPV6, USE_TCP, DISABLE_NAGLE, USE_MCAST, SHM_MEM, SHM_MMAP, PKG_MALLOC, F_MALLOC, DBG_QM_MALLOC, FAST_LOCK-ADAPTIVE_WAIT
>>>> 
>>>> #012module: STATS: Off, USE_IPV6, USE_TCP, DISABLE_NAGLE, USE_MCAST, SHM_MEM, SHM_MMAP, PKG_MALLOC, F_MALLOC, DBG_QM_MALLOC, DBG_F_MALLOC, FAST_LOCK-ADAPTIVE_WAIT
>>>> 
>>>> 
>>>> Richard
>>>> 
>>>> 
>>>> On May 27, 2010, at 10:35 AM, Bogdan-Andrei Iancu wrote:
>>>> 
>>>> 
>>>>> Hi Richard,
>>>>> 
>>>>> Richard Revels wrote:
>>>>> 
>>>>>> In Makefile.defs uncomment
>>>>>> 
>>>>>>        -DDBG_QM_MALLOC \
>>>>>>        -DDBG_F_MALLOC \
>>>>>> 
>>>>>> 
>>>>> use only  DDBG_QM_MALLOC !!
>>>>> 
>>>>>> In script set
>>>>>> 
>>>>>> debug=6
>>>>>> memlog=6
>>>>>> 
>>>>>> 
>>>>>> Restart and let run for a while.  Then
>>>>>> 
>>>>>> cat /var/log/opensips-msg | egrep 'freeing|DBG:core:fm_malloc.*called' | sed -e 's/.*free.*\: \(.*\)/\1-mfree/' -e 's/.*malloc.*\: \(.*\)/\1-malloc/' | sort | uniq -c
>>>>>> 
>>>>>> Adjust path for wherever you are logging of course.  Your output will have something like
>>>>>> 
>>>>>>  3015 parse_contact(81)-malloc
>>>>>>  3015 parse_contact(81)-mfree
>>>>>>  3015 parse_contacts(192)-malloc
>>>>>>  3015 parse_contacts(192)-mfree
>>>>>> 19592 parse_from_header(63)-malloc
>>>>>> 19592 parse_from_header(63)-mfree
>>>>>> 335368 parse_headers(309)-malloc
>>>>>> 335368 parse_headers(309)-mfree
>>>>>> 
>>>>>> for all the calls that are fine.  Then something like
>>>>>> 
>>>>>> 14922 do_parse_rr_body(65)-malloc
>>>>>>  8989 do_parse_rr_body(65)-mfree
>>>>>> 
>>>>>> or
>>>>>> 
>>>>>>  9016 sip_msg_cloner(437)-malloc
>>>>>>  6003 sip_msg_cloner(437)-mfree
>>>>>> 
>>>>>> 
>>>>> That is not relevant as a mem block can be allocated in function X and
>>>>> freed in function Y, so you cannot correlate the numbers.
>>>>> 
>>>>>> for calls that need further looking into.  You'll probably want to go grep out the problem values in the log to get more information about what's calling them.
>>>>>> 
>>>>>> I'm chasing a fairly nasty memory leak (shared memory) right now and thought I would document / share some of the methods we use for this type of thing.
>>>>>> 
>>>>>> 
>>>>> See:  http://www.opensips.org/Resources/DocsTsMem - try to get a dump to
>>>>> see if there are leaks.
>>>>> 
>>>>> Regards,
>>>>> Bogdan
>>>>> 
>>>>>> Richard
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> _______________________________________________
>>>>>> Users mailing list
>>>>>> Users at lists.opensips.org
>>>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>>>> 
>>>>>> 
>>>>>> 
>>>>> --
>>>>> Bogdan-Andrei Iancu
>>>>> www.voice-system.ro
>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> Users mailing list
>>>>> Users at lists.opensips.org
>>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>>> 
>>>> 
>>>> 
>>>> _______________________________________________
>>>> Users mailing list
>>>> Users at lists.opensips.org
>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>> 
>>>> 
>>> 
>>> 
>>> --
>>> Bogdan-Andrei Iancu
>>> www.voice-system.ro
>>> 
>>> 
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.opensips.org
>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>> 
>> 
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>> 
> 
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users




More information about the Users mailing list