[SR-Users] set_body_multipart and memory leak

Daniel-Constantin Mierla miconda at gmail.com
Tue May 3 18:36:27 CEST 2016


I guess I haven't replied to mailing list, but the patches were already
backported to 4.4 branch few days ago.

Cheers,
Daniel

On 03/05/16 18:30, Sergey Basov wrote:
>
> Thank you, Daniel.
>
> 2 мая 2016 г. 10:31 пользователь "Daniel-Constantin Mierla"
> <miconda at gmail.com <mailto:miconda at gmail.com>> написал:
>
>     Hi Sergey,
>
>     yes, they will be backported -- on my short to-do list.
>
>     Cheers,
>     Daniel
>
>
>     On 29/04/16 13:08, Sergey Basov wrote:
>>     Hi Daniel.
>>
>>     Thank you, for commit, and sorry for wrong format.
>>
>>     Can you apply this patches for kamailio 4.4 branch ?
>>
>>     --
>>     Best regards,
>>     Sergey Basov                     e-mail: sergey.v.basov at gmail.com <mailto:sergey.v.basov at gmail.com>
>>
>>     tel: (+38067) 403-62-54 <tel:%28%2B38067%29%20403-62-54>
>>
>>
>>     2016-04-28 9:16 GMT+03:00 Sergey Basov <sergey.v.basov at gmail.com> <mailto:sergey.v.basov at gmail.com>:
>>>     Hi Daniel.
>>>
>>>     I have create pool request as you have proposed.
>>>
>>>     https://github.com/kamailio/kamailio/pull/587
>>>
>>>     After this patches problem with memory leak was solved for me.
>>>
>>>     Thank you.
>>>     --
>>>     Best regards,
>>>     Sergey Basov                     e-mail: sergey.v.basov at gmail.com <mailto:sergey.v.basov at gmail.com>
>>>
>>>     tel: (+38067) 403-62-54 <tel:%28%2B38067%29%20403-62-54>
>>>
>>>
>>>     2016-04-22 15:45 GMT+03:00 Sergey Basov <sergey.v.basov at gmail.com> <mailto:sergey.v.basov at gmail.com>:
>>>>     I found root cause of the second issue.
>>>>
>>>>     after converting body to multipart
>>>>     in msg_translator.c function "check_boundaries" see that flag
>>>>     FL_BODY_MULTIPART is set , executing "build_body" function which
>>>>     returns buffer
>>>>     but function "get_boundary" called at line 1752 of msg_translator.c (
>>>>     if(get_boundary(msg, &ob)!=0) return -1;) find that content type of
>>>>     message not multipart/mixed but application/sdp and returns -1
>>>>     then exit from function "int check_boundaries(struct sip_msg *msg,
>>>>     struct dest_info *send_info)" is performed without feeing buffer.
>>>>
>>>>     I have changed line 1752 of msg_translator.c
>>>>     from
>>>>     if(get_boundary(msg, &ob)!=0) return -1;
>>>>
>>>>     to
>>>>     if(get_boundary(msg, &ob)!=0) {
>>>>             if(tmp.s) pkg_free(tmp.s);
>>>>              return -1;
>>>>     }
>>>>
>>>>     And 3-rd, last for my case, memory leak has gone away.
>>>>
>>>>     I does not know why check "if(!(msg->msg_flags&FL_BODY_MULTIPART))"
>>>>     returns false...
>>>>
>>>>     But in this way it works for me without memory leak.
>>>>     --
>>>>     Best regards,
>>>>     Sergey Basov                     e-mail: sergey.v.basov at gmail.com <mailto:sergey.v.basov at gmail.com>
>>>>
>>>>     tel: (+38067) 403-62-54 <tel:%28%2B38067%29%20403-62-54>
>>>>
>>>>
>>>>     2016-04-22 14:06 GMT+03:00 Daniel-Constantin Mierla <miconda at gmail.com> <mailto:miconda at gmail.com>:
>>>>>     Thanks for troubleshooting further. If it is convenient for you, make a pull
>>>>>     request with the patch fixing the problem -- it is easier to review online
>>>>>     and merge the patch if everything is ok.
>>>>>
>>>>>     If not, I am going to check it later today if I get the time, or during the
>>>>>     next days -- right now being caught with some meetings.
>>>>>
>>>>>     Cheers,
>>>>>     Daniel
>>>>>
>>>>>
>>>>>     On 22/04/16 10:18, Sergey Basov wrote:
>>>>>
>>>>>     Looks like we nned to free memory for
>>>>>
>>>>>     if(convert && nb.s!=NULL) pkg_free(nb.s);
>>>>>     if(convert && oc.s!=NULL) pkg_free(oc.s);
>>>>>
>>>>>     before
>>>>>
>>>>>     LM_DBG("set flag FL_BODY_MULTIPART\n");
>>>>>
>>>>>     In this case there no more leak in textops.c:
>>>>>     set_multibody_helper(1637) and textops.c:set_multibody_helper(1648)
>>>>>
>>>>>     But there is one more trouble after set_body_multipart
>>>>>
>>>>>
>>>>>     Apr 22 10:48:39 sip1 /usr/sbin/kamailio-sipt[20349]: ERROR: <core>
>>>>>     [msg_translator.c:1691]: get_boundary(): Content-Type hdr has no
>>>>>     params
>>>>>     Apr 22 10:48:39 sip1 /usr/sbin/kamailio-sipt[20349]: WARNING: <core>
>>>>>     [msg_translator.c:1954]: build_req_buf_from_sip_req():
>>>>>     check_boundaries error
>>>>>
>>>>>     when doing msg_apply_changes
>>>>>     after 1 call
>>>>>     qm_sums:  count=     1 size=       256 bytes from core:
>>>>>     msg_translator.c: build_body(2986)
>>>>>     after 2 calls
>>>>>     qm_sums:  count=     2 size=       536 bytes from core:
>>>>>     msg_translator.c: build_body(2986)
>>>>>
>>>>>     --
>>>>>     Best regards,
>>>>>     Sergey Basov                     e-mail: sergey.v.basov at gmail.com <mailto:sergey.v.basov at gmail.com>
>>>>>
>>>>>     tel: (+38067) 403-62-54 <tel:%28%2B38067%29%20403-62-54>
>>>>>
>>>>>
>>>>>     2016-04-22 10:20 GMT+03:00 Sergey Basov <sergey.v.basov at gmail.com> <mailto:sergey.v.basov at gmail.com>:
>>>>>
>>>>>     Done.
>>>>>
>>>>>     Please see in attached files.
>>>>>
>>>>>     seems textops.c: set_multibody_helper(1637) and textops.c:
>>>>>     set_multibody_helper(1648) size are increasing..
>>>>>     --
>>>>>     Best regards,
>>>>>     Sergey Basov                     e-mail: sergey.v.basov at gmail.com <mailto:sergey.v.basov at gmail.com>
>>>>>
>>>>>     tel: (+38067) 403-62-54 <tel:%28%2B38067%29%20403-62-54>
>>>>>
>>>>>
>>>>>     2016-04-22 10:05 GMT+03:00 Daniel-Constantin Mierla <miconda at gmail.com> <mailto:miconda at gmail.com>:
>>>>>
>>>>>     Checked the code and noticed that the behaviour is controlled also by
>>>>>     mem_summary core parameter.
>>>>>
>>>>>     https://www.kamailio.org/wiki/cookbooks/4.4.x/core#mem_summary
>>>>>
>>>>>     Can you redo the tests after setting mem_summary=12 ?
>>>>>
>>>>>     Cheers,
>>>>>
>>>>>     Daniel
>>>>>
>>>>>
>>>>>     On 22/04/16 08:52, Sergey Basov wrote:
>>>>>
>>>>>     I have used corex.pkg_summary pid 19607
>>>>>     where pid is the pid of "udp receiver" process
>>>>>
>>>>>     I used it few times, and after a while I get that output.
>>>>>     --
>>>>>     Best regards,
>>>>>     Sergey Basov                     e-mail: sergey.v.basov at gmail.com <mailto:sergey.v.basov at gmail.com>
>>>>>
>>>>>     tel: (+38067) 403-62-54 <tel:%28%2B38067%29%20403-62-54>
>>>>>
>>>>>
>>>>>     2016-04-22 9:24 GMT+03:00 Daniel-Constantin Mierla <miconda at gmail.com> <mailto:miconda at gmail.com>:
>>>>>
>>>>>     Hello,
>>>>>
>>>>>     this seems to be the memory status output, not the summary. What command did
>>>>>     you use to generate it?
>>>>>
>>>>>     Also, can you test with kamailio 4.4 started with the option '-x qm'?
>>>>>
>>>>>     Cheers,
>>>>>
>>>>>     Daniel
>>>>>
>>>>>     On 22/04/16 07:25, Sergey Basov wrote:
>>>>>
>>>>>     Hi, Daniel.
>>>>>
>>>>>     After enabling pkg.summary dump for "udp receiver" process I got 1-st entry
>>>>>
>>>>>     Apr 22 08:14:12 sip1 /usr/sbin/kamailio-sipt[19613]: INFO: <core>
>>>>>     [cfg/cfg_ctx.c:608]: cfg_set_now(): INFO: cfg_set_now():
>>>>>     core.mem_dump_pkg has been changed to 19607
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: <core>
>>>>>     [pt.c:532]: mem_dump_pkg_cb(): Memory status (pkg) of process 19607:
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     fm_status (0x7f9636155010):
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>      heap size= 2097152
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>      used= 473912, used+overhead=627848, free=1469304
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>      max used (+overhead)= 642792
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     dumping free list:
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   1 fragments no.:    10, unused:     0#012#011#011 bucket
>>>>>     size:         8 -         8 (first         8)
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   2 fragments no.:     4, unused:     0#012#011#011 bucket
>>>>>     size:        16 -        16 (first        16)
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   7 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:        56 -        56 (first        56)
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   8 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:        64 -        64 (first        64)
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 128 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:      1024 -      1024 (first      1024)
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 142 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:      1136 -      1136 (first      1136)
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 217 fragments no.:    12, unused:     0#012#011#011 bucket
>>>>>     size:      1736 -      1736 (first      1736)
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 2055 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:   1048576 -   2097152 (first   1446048)
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     TOTAL:     31 free fragments = 1469304 free bytes
>>>>>     Apr 22 08:14:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     -----------------------------
>>>>>
>>>>>     ----------------------
>>>>>     2-nd entry, after few test calls
>>>>>
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: <core>
>>>>>     [pt.c:532]: mem_dump_pkg_cb(): Memory status (pkg) of process 19607:
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     fm_status (0x7f9636155010):
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>      heap size= 2097152
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>      used= 476264, used+overhead=637832, free=1459320
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>      max used (+overhead)= 653072
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     dumping free list:
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   1 fragments no.:    10, unused:     0#012#011#011 bucket
>>>>>     size:         8 -         8 (first         8)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   3 fragments no.:     5, unused:     0#012#011#011 bucket
>>>>>     size:        24 -        24 (first        24)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   6 fragments no.:     3, unused:     0#012#011#011 bucket
>>>>>     size:        48 -        48 (first        48)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   7 fragments no.:    25, unused:     0#012#011#011 bucket
>>>>>     size:        56 -        56 (first        56)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   8 fragments no.:    45, unused:     0#012#011#011 bucket
>>>>>     size:        64 -        64 (first        64)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   9 fragments no.:     5, unused:     0#012#011#011 bucket
>>>>>     size:        72 -        72 (first        72)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  12 fragments no.:     2, unused:     0#012#011#011 bucket
>>>>>     size:        96 -        96 (first        96)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  13 fragments no.:     3, unused:     0#012#011#011 bucket
>>>>>     size:       104 -       104 (first       104)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  14 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       112 -       112 (first       112)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  15 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       120 -       120 (first       120)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  16 fragments no.:     2, unused:     0#012#011#011 bucket
>>>>>     size:       128 -       128 (first       128)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  18 fragments no.:     2, unused:     0#012#011#011 bucket
>>>>>     size:       144 -       144 (first       144)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  19 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       152 -       152 (first       152)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  20 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       160 -       160 (first       160)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  29 fragments no.:     2, unused:     0#012#011#011 bucket
>>>>>     size:       232 -       232 (first       232)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  34 fragments no.:     2, unused:     0#012#011#011 bucket
>>>>>     size:       272 -       272 (first       272)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  39 fragments no.:     2, unused:     0#012#011#011 bucket
>>>>>     size:       312 -       312 (first       312)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  50 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       400 -       400 (first       400)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  59 fragments no.:     3, unused:     0#012#011#011 bucket
>>>>>     size:       472 -       472 (first       472)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  60 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       480 -       480 (first       480)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  76 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       608 -       608 (first       608)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  78 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       624 -       624 (first       624)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  89 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       712 -       712 (first       712)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 130 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:      1040 -      1040 (first      1040)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 221 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:      1768 -      1768 (first      1768)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 229 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:      1832 -      1832 (first      1832)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 313 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:      2504 -      2504 (first      2504)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 2055 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:   1048576 -   2097152 (first   1439728)
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     TOTAL:    125 free fragments = 1459320 free bytes
>>>>>     Apr 22 08:18:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     -----------------------------
>>>>>
>>>>>     ---------------
>>>>>     3-d output after more calls
>>>>>
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: <core>
>>>>>     [pt.c:532]: mem_dump_pkg_cb(): Memory status (pkg) of process 19607:
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     fm_status (0x7f9636155010):
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>      heap size= 2097152
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>      used= 478096, used+overhead=640384, free=1456768
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>      max used (+overhead)= 656296
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     dumping free list:
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   1 fragments no.:    10, unused:     0#012#011#011 bucket
>>>>>     size:         8 -         8 (first         8)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   3 fragments no.:     2, unused:     0#012#011#011 bucket
>>>>>     size:        24 -        24 (first        24)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   6 fragments no.:     3, unused:     0#012#011#011 bucket
>>>>>     size:        48 -        48 (first        48)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   7 fragments no.:    27, unused:     0#012#011#011 bucket
>>>>>     size:        56 -        56 (first        56)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   8 fragments no.:    45, unused:     0#012#011#011 bucket
>>>>>     size:        64 -        64 (first        64)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =   9 fragments no.:     5, unused:     0#012#011#011 bucket
>>>>>     size:        72 -        72 (first        72)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  12 fragments no.:     2, unused:     0#012#011#011 bucket
>>>>>     size:        96 -        96 (first        96)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  13 fragments no.:     3, unused:     0#012#011#011 bucket
>>>>>     size:       104 -       104 (first       104)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  14 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       112 -       112 (first       112)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  15 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       120 -       120 (first       120)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  16 fragments no.:     2, unused:     0#012#011#011 bucket
>>>>>     size:       128 -       128 (first       128)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  18 fragments no.:     3, unused:     0#012#011#011 bucket
>>>>>     size:       144 -       144 (first       144)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  19 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       152 -       152 (first       152)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  20 fragments no.:     2, unused:     0#012#011#011 bucket
>>>>>     size:       160 -       160 (first       160)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  29 fragments no.:     2, unused:     0#012#011#011 bucket
>>>>>     size:       232 -       232 (first       232)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  33 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       264 -       264 (first       264)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  39 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       312 -       312 (first       312)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  50 fragments no.:     2, unused:     0#012#011#011 bucket
>>>>>     size:       400 -       400 (first       400)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  59 fragments no.:     3, unused:     0#012#011#011 bucket
>>>>>     size:       472 -       472 (first       472)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  60 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       480 -       480 (first       480)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  71 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       568 -       568 (first       568)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash =  79 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       632 -       632 (first       632)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 118 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:       944 -       944 (first       944)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 141 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:      1128 -      1128 (first      1128)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 186 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:      1488 -      1488 (first      1488)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 221 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:      1768 -      1768 (first      1768)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 229 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:      1832 -      1832 (first      1832)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 313 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:      2504 -      2504 (first      2504)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     hash = 2055 fragments no.:     1, unused:     0#012#011#011 bucket
>>>>>     size:   1048576 -   2097152 (first   1435248)
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     TOTAL:    126 free fragments = 1456768 free bytes
>>>>>     Apr 22 08:24:28 sip1 /usr/sbin/kamailio-sipt[19607]: ALERT: fm_status:
>>>>>     -----------------------------
>>>>>
>>>>>     --
>>>>>     Best regards,
>>>>>     Sergey Basov                     e-mail: sergey.v.basov at gmail.com <mailto:sergey.v.basov at gmail.com>
>>>>>
>>>>>     tel: (+38067) 403-62-54 <tel:%28%2B38067%29%20403-62-54>
>>>>>
>>>>>
>>>>>     2016-04-21 18:11 GMT+03:00 Sergey Basov <sergey.v.basov at gmail.com> <mailto:sergey.v.basov at gmail.com>:
>>>>>
>>>>>     Hi, Daniel.
>>>>>
>>>>>     Tested on 4.3.5 and 4.4.0 - same issue.
>>>>>
>>>>>     Tomorrow I will make dump.
>>>>>
>>>>>     Thank you.
>>>>>
>>>>>     Hello,
>>>>>
>>>>>     what version of kamailio are you using?
>>>>>
>>>>>     Can you get the pkg summary dump from syslog?
>>>>>
>>>>>     http://www.kamailio.org/docs/modules/stable/modules/corex.html#idp5056
>>>>>
>>>>>     Cheers,
>>>>>     Daniel
>>>>>
>>>>>     On 21/04/16 14:46, Sergey Basov wrote:
>>>>>
>>>>>     Hi, All.
>>>>>
>>>>>     I have some problems with pkg_memory leak.
>>>>>
>>>>>     After each call used private memory of the "udp receiver" process
>>>>>     increases at 2500 bytes.
>>>>>     On test environment I hav set it to 2Mbyte, but it is full after 700
>>>>>     calls.
>>>>>
>>>>>     I need to modify SDP in invite and other packets.
>>>>>     When I do
>>>>>
>>>>>     ====================================================
>>>>>
>>>>>     if(has_body("application/sdp"))
>>>>>        set_body_multipart();
>>>>>        if (msg_apply_changes())
>>>>>         {
>>>>>            xlog("L_INFO", "ISUP 1 Changes Applied Succesfully");
>>>>>         }
>>>>>     }
>>>>>
>>>>>     record_route();
>>>>>     dlg_manage
>>>>>     route(RELAY);
>>>>>
>>>>>     ====================================================
>>>>>
>>>>>
>>>>>     Debug from kamailio:
>>>>>
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: textops
>>>>>     [textops.c:2627]: has_body_f(): content type is 196611
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: textops
>>>>>     [textops.c:1577]: set_multibody_helper():
>>>>>     delimiter<17>:[unique-boundary-1]
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: textops
>>>>>     [textops.c:1486]: generate_boundary(): adding final CRLF+CRLF
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: textops
>>>>>     [textops.c:1714]: set_multibody_helper():
>>>>>     content-type<44>:[multipart/mixed;boundary="unique-boundary-1"]
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: textops
>>>>>     [textops.c:1766]: set_multibody_helper(): set flag FL_BODY_MULTIPART
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: ERROR: <core>
>>>>>     [msg_translator.c:1691]: get_boundary(): Content-Type hdr has no
>>>>>     params
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: WARNING: <core>
>>>>>     [msg_translator.c:1954]: build_req_buf_from_sip_req():
>>>>>     check_boundaries error
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [msg_translator.c:422]: clen_builder(): content-length: 251 (251)
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: textopsx
>>>>>     [textopsx.c:231]: msg_apply_changes_f(): SIP message content updated -
>>>>>     reparsing
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/msg_parser.c:608]: parse_msg(): SIP Request:
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/msg_parser.c:610]: parse_msg():  method:  <INVITE>
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/msg_parser.c:612]: parse_msg():  uri:
>>>>>     <sip:0637304494 at 10.56.42.27:5070;user=phone>
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/msg_parser.c:614]: parse_msg():  version: <SIP/2.0>
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/parse_via.c:1254]: parse_via_param(): Found param type 232,
>>>>>     <branch> = <z9hG4bK09e6.2654d2382f7c4e4fb8bb62fe85f62dfa.0>; state=6
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/parse_via.c:1254]: parse_via_param(): Found param type 236,
>>>>>     <i> = <1>; state=16
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/parse_via.c:2642]: parse_via(): end of header reached, state=5
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/msg_parser.c:496]: parse_headers(): parse_headers: Via found,
>>>>>     flags=2
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/msg_parser.c:498]: parse_headers(): parse_headers: this is the
>>>>>     first via
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: INFO: <script>:
>>>>>     ISUP 1 Changes Applied Succesfully
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/parse_via.c:1254]: parse_via_param(): Found param type 232,
>>>>>     <branch> =
>>>>>     <z9hG4bKsr-s7wTDLa0zUfsTql5zpl0zpl0z.lRD.zok.TLz.lSk2Fw1RY9PJYMxpdED.dED.aEG38LkpcsWhqMQr1v1bFAyJGCxrCoQdB71Mtceh52GpZKDpX3zRFAzVFJzhBLGpeJe.TczW7cDuT8GLs7O37vBbn6BbTfGhM2Gpl*>;
>>>>>     state=16
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/parse_via.c:2642]: parse_via(): end of header reached, state=5
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/msg_parser.c:496]: parse_headers(): parse_headers: Via found,
>>>>>     flags=ffffffffffffffff
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/msg_parser.c:509]: parse_headers(): parse_headers: this is the
>>>>>     second via
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/parse_addr_spec.c:894]: parse_addr_spec(): end of header
>>>>>     reached, state=10
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/msg_parser.c:173]: get_hdr_field(): DEBUG: get_hdr_field: <To>
>>>>>     [46]; uri=[sip:0637304494 at 10.56.42.27:5070;user=phone]
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/msg_parser.c:175]: get_hdr_field(): DEBUG: to body
>>>>>     [<sip:0637304494 at 10.56.42.27:5070;user=phone>#015#012]
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/msg_parser.c:153]: get_hdr_field(): get_hdr_field: cseq
>>>>>     <CSeq>: <2> <INVITE>
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/msg_parser.c:187]: get_hdr_field(): DEBUG: get_hdr_body :
>>>>>     content_length=251
>>>>>     Apr 21 15:38:20 sip1 /usr/sbin/kamailio-sipt[17775]: DEBUG: <core>
>>>>>     [parser/msg_parser.c:89]: get_hdr_field(): found end of header
>>>>>
>>>>>
>>>>>
>>>>>     --
>>>>>     Best regards,
>>>>>     Sergey Basov                     e-mail: sergey.v.basov at gmail.com <mailto:sergey.v.basov at gmail.com>
>>>>>
>>>>>     _______________________________________________
>>>>>     SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>>>>>     sr-users at lists.sip-router.org
>>>>>     <mailto:sr-users at lists.sip-router.org>
>>>>>     http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>>>>
>>>>>     --
>>>>>     Daniel-Constantin Mierla
>>>>>     http://www.asipto.com
>>>>>     http://twitter.com/#!/miconda <http://twitter.com/#%21/miconda> - http://www.linkedin.com/in/miconda
>>>>>     Kamailio World Conference, Berlin, May 18-20, 2016 -
>>>>>     http://www.kamailioworld.com
>>>>>
>>>>>
>>>>>     _______________________________________________
>>>>>     SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>>>>>     sr-users at lists.sip-router.org
>>>>>     <mailto:sr-users at lists.sip-router.org>
>>>>>     http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>>>>
>>>>>
>>>>>     --
>>>>>     Daniel-Constantin Mierla
>>>>>     http://www.asipto.com
>>>>>     http://twitter.com/#!/miconda <http://twitter.com/#%21/miconda> - http://www.linkedin.com/in/miconda
>>>>>     Kamailio World Conference, Berlin, May 18-20, 2016 -
>>>>>     http://www.kamailioworld.com
>>>>>
>>>>>
>>>>>     --
>>>>>     Daniel-Constantin Mierla
>>>>>     http://www.asipto.com
>>>>>     http://twitter.com/#!/miconda <http://twitter.com/#%21/miconda> - http://www.linkedin.com/in/miconda
>>>>>     Kamailio World Conference, Berlin, May 18-20, 2016 -
>>>>>     http://www.kamailioworld.com
>>>>>
>>>>>
>>>>>     --
>>>>>     Daniel-Constantin Mierla
>>>>>     http://www.asipto.com
>>>>>     http://twitter.com/#!/miconda <http://twitter.com/#%21/miconda> - http://www.linkedin.com/in/miconda
>>>>>     Kamailio World Conference, Berlin, May 18-20, 2016 -
>>>>>     http://www.kamailioworld.com
>
>     -- 
>     Daniel-Constantin Mierla
>     http://www.asipto.com
>     http://twitter.com/#!/miconda <http://twitter.com/#%21/miconda> - http://www.linkedin.com/in/miconda
>     Kamailio World Conference, Berlin, May 18-20, 2016 - http://www.kamailioworld.com
>

-- 
Daniel-Constantin Mierla
http://www.asipto.com
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Kamailio World Conference, Berlin, May 18-20, 2016 - http://www.kamailioworld.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20160503/39578550/attachment.html>


More information about the sr-users mailing list