I have fs running in a 64MB system, a 450MHz arm with no cache (or hard drive).
I have very few calls running at the same time ~5 channels max, and I see a memory usage of about 20-23MB. I have not done any load testing like you describe, but during a bridged call the fs CPU load is not measurable (no transcoding). To get to this I did delete all the optional freeswitch modules that I was not using, that made a noticeable difference. If you don't need the language modules you can also save more space by excluding switch_cpp.cpp from the build. I use mod_sofia, mod_console, mod_syslog, mod_ilbc, mod_event_socket, mod_commands, mod_conference, mod_dptools, mod_expr, mod_limit, mod_esf, mod_fsv, mod_dialplan_xml and a custom module. Edit autoload_configs/modules.conf.xml to exclude the modules you don't need. Simon On 7/30/08 9:07 PM, "Sangwoo Jin" <[EMAIL PROTECTED]> wrote: > I want to run freeswitch on low memory machine with 128M ram and no swap > partition. > On testing freeswitch on it, I have always seen the out of memory error. > Could I control the memory pools? > >> -----Original Message----- >> From: [EMAIL PROTECTED] [mailto:freeswitch- >> [EMAIL PROTECTED] On Behalf Of Brian West >> Sent: Thursday, July 31, 2008 11:38 AM >> To: [email protected] >> Subject: Re: [Freeswitch-users] Memory Leaks >> >> Try running 500,000 calls at 100-200 cps with a duration of 1 second. >> You'll always see something about lost memory on shut down and you >> can't fully trust that output due to the usage of memory pools. >> You'll see a running FreeSWITCH hit a high water mark and level off on >> memory usage. I suspect that if you do this test with that many calls >> you'll see the same usage at some point or it will be more >> pronounced. 100 or 1000 calls isn't enough to really tell what is >> going on. >> >> /b >> >> On Jul 30, 2008, at 9:25 PM, Sangwoo Jin wrote: >> >>> >>> I can't use JIRA because I'm waiting for confirmation of creating >>> account. >>> >>> Now, I tested again with the current svn trunk. >>> The lost memory of 1000 calls is 10 times more than 100 calls. >>> >>> The following logs are my filtered valgrind's output. >>> I have removed the lost blocks log which may not have to be free. >>> >>> Could you check this problem? >>> Sangwoo Jin >>> >>> = >>> = >>> = >>> = >>> = >>> = >>> ====================================================================== >>> 100 calls' log >>> = >>> = >>> = >>> = >>> = >>> = >>> ====================================================================== >>> ==29384== 284 bytes in 1 blocks are still reachable in loss record >>> 25 of 60 >>> ==29384== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29384== by 0x7D98B43: su_hash_alloc (su_alloc.c:390) >>> ==29384== by 0x7D98CDE: su_home_new (su_alloc.c:562) >>> ==29384== by 0x7D06390: msg_create (msg.c:61) >>> ==29384== by 0x7D2490A: nta_msg_create (nta.c:2831) >>> ==29384== by 0x7D4336A: nua_client_request_template (nua_stack.c: >>> 2361) >>> ==29384== by 0x7D42C8E: nua_client_init_request (nua_stack.c:2223) >>> ==29384== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29384== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29384== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29384== by 0x7DA2FA9: su_base_port_execute_msgs (su_base_port.c: >>> 276) >>> ==29384== by 0x7DA2D50: su_base_port_getmsgs (su_base_port.c:198) >>> ==29384== >>> ==29384== >>> >>> ==29384== >>> ==29384== 504 bytes in 1 blocks are possibly lost in loss record 30 >>> of 60 >>> ==29384== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29384== by 0x7D98CC1: su_home_new (su_alloc.c:559) >>> ==29384== by 0x7D06390: msg_create (msg.c:61) >>> ==29384== by 0x7D2490A: nta_msg_create (nta.c:2831) >>> ==29384== by 0x7D4336A: nua_client_request_template (nua_stack.c: >>> 2361) >>> ==29384== by 0x7D42C8E: nua_client_init_request (nua_stack.c:2223) >>> ==29384== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29384== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29384== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29384== by 0x7DA2FA9: su_base_port_execute_msgs (su_base_port.c: >>> 276) >>> ==29384== by 0x7DA2D50: su_base_port_getmsgs (su_base_port.c:198) >>> ==29384== by 0x7DA3084: su_base_port_run (su_base_port.c:331) >>> ==29384== >>> ==29384== >>> ==29384== 671 bytes in 8 blocks are possibly lost in loss record 32 >>> of 60 >>> ==29384== at 0x4022B08: malloc (vg_replace_malloc.c:207) >>> ==29384== by 0x7D989A2: sub_alloc (su_alloc.c:490) >>> ==29384== by 0x7D9929E: su_alloc (su_alloc.c:771) >>> ==29384== by 0x7D04E15: msg_header_alloc (msg_parser.c:2309) >>> ==29384== by 0x7D0273D: header_parse (msg_parser.c:1114) >>> ==29384== by 0x7D025E3: extract_header (msg_parser.c:1071) >>> ==29384== by 0x7D02315: msg_extract_header (msg_parser.c:1008) >>> ==29384== by 0x7D05BD2: msg_header_parse_str (msg_parser.c:2801) >>> ==29384== by 0x7D05B1E: msg_header_add_str (msg_parser.c:2764) >>> ==29384== by 0x7D7B534: sip_add_tagis (sip_tag_class.c:260) >>> ==29384== by 0x7D42EB4: nua_client_init_request (nua_stack.c:2278) >>> ==29384== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29384== >>> ==29384== >>> ==29384== 1,072 bytes in 2 blocks are possibly lost in loss record >>> 37 of 60 >>> ==29384== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29384== by 0x7D9ABB4: su_zalloc (su_alloc.c:1437) >>> ==29384== by 0x7DA0A84: su_msg_new (su_root.c:901) >>> ==29384== by 0x7D3E4CB: nua_signal (nua_stack.c:495) >>> ==29384== by 0x7D46FF7: nua_invite (nua.c:633) >>> ==29384== by 0x7CEB0DE: sofia_glue_do_invite (sofia_glue.c:1305) >>> ==29384== by 0x7CCA773: sofia_on_init (mod_sofia.c:99) >>> ==29384== by 0x40A630D: switch_core_session_run >>> (switch_core_state_machine.c:415) >>> ==29384== by 0x40A52F4: switch_core_session_thread >>> (switch_core_session.c:787) >>> ==29384== by 0x40FC695: dummy_worker (thread.c:138) >>> ==29384== by 0x41EB191: start_thread (in /lib/libpthread-2.6.1.so) >>> ==29384== by 0x42F502D: clone (in /lib/libc-2.6.1.so) >>> ==29384== >>> ==29384== >>> ==29384== 1,295 bytes in 21 blocks are still reachable in loss >>> record 38 of >>> 60 >>> ==29384== at 0x4022B08: malloc (vg_replace_malloc.c:207) >>> ==29384== by 0x7D989A2: sub_alloc (su_alloc.c:490) >>> ==29384== by 0x7D9929E: su_alloc (su_alloc.c:771) >>> ==29384== by 0x7D04E15: msg_header_alloc (msg_parser.c:2309) >>> ==29384== by 0x7D11E7A: msg_header_make (msg_header_make.c:86) >>> ==29384== by 0x7D05A73: msg_header_add_make (msg_parser.c:2729) >>> ==29384== by 0x7D7B503: sip_add_tagis (sip_tag_class.c:256) >>> ==29384== by 0x7D433D8: nua_client_request_template (nua_stack.c: >>> 2377) >>> ==29384== by 0x7D42C8E: nua_client_init_request (nua_stack.c:2223) >>> ==29384== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29384== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29384== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29384== >>> ==29384== >>> ==29384== 28,116 bytes in 99 blocks are indirectly lost in loss >>> record 55 of >>> 60 >>> ==29384== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29384== by 0x7D98B43: su_hash_alloc (su_alloc.c:390) >>> ==29384== by 0x7D98CDE: su_home_new (su_alloc.c:562) >>> ==29384== by 0x7D06390: msg_create (msg.c:61) >>> ==29384== by 0x7D2490A: nta_msg_create (nta.c:2831) >>> ==29384== by 0x7D4336A: nua_client_request_template (nua_stack.c: >>> 2361) >>> ==29384== by 0x7D42C8E: nua_client_init_request (nua_stack.c:2223) >>> ==29384== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29384== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29384== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29384== by 0x7DA2FA9: su_base_port_execute_msgs (su_base_port.c: >>> 276) >>> ==29384== by 0x7DA2D50: su_base_port_getmsgs (su_base_port.c:198) >>> ==29384== >>> ==29384== >>> ==29384== 52,528 bytes in 98 blocks are definitely lost in loss >>> record 56 of >>> 60 >>> ==29384== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29384== by 0x7D9ABB4: su_zalloc (su_alloc.c:1437) >>> ==29384== by 0x7DA0A84: su_msg_new (su_root.c:901) >>> ==29384== by 0x7D3E4CB: nua_signal (nua_stack.c:495) >>> ==29384== by 0x7D46FF7: nua_invite (nua.c:633) >>> ==29384== by 0x7CEB0DE: sofia_glue_do_invite (sofia_glue.c:1305) >>> ==29384== by 0x7CCA773: sofia_on_init (mod_sofia.c:99) >>> ==29384== by 0x40A630D: switch_core_session_run >>> (switch_core_state_machine.c:415) >>> ==29384== by 0x40A52F4: switch_core_session_thread >>> (switch_core_session.c:787) >>> ==29384== by 0x40FC695: dummy_worker (thread.c:138) >>> ==29384== by 0x41EB191: start_thread (in /lib/libpthread-2.6.1.so) >>> ==29384== by 0x42F502D: clone (in /lib/libc-2.6.1.so) >>> ==29384== >>> ==29384== >>> ==29384== 57,034 bytes in 871 blocks are indirectly lost in loss >>> record 57 >>> of 60 >>> ==29384== at 0x4022B08: malloc (vg_replace_malloc.c:207) >>> ==29384== by 0x7D989A2: sub_alloc (su_alloc.c:490) >>> ==29384== by 0x7D9929E: su_alloc (su_alloc.c:771) >>> ==29384== by 0x7D04E15: msg_header_alloc (msg_parser.c:2309) >>> ==29384== by 0x7D11E7A: msg_header_make (msg_header_make.c:86) >>> ==29384== by 0x7D05A73: msg_header_add_make (msg_parser.c:2729) >>> ==29384== by 0x7D7B503: sip_add_tagis (sip_tag_class.c:256) >>> ==29384== by 0x7D42EB4: nua_client_init_request (nua_stack.c:2278) >>> ==29384== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29384== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29384== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29384== by 0x7DA2FA9: su_base_port_execute_msgs (su_base_port.c: >>> 276) >>> ==29384== >>> ==29384== >>> ==29384== 135,046 (49,896 direct, 85,150 indirect) bytes in 99 >>> blocks are >>> definitely lost in loss record 58 of 60 >>> ==29384== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29384== by 0x7D98CC1: su_home_new (su_alloc.c:559) >>> ==29384== by 0x7D06390: msg_create (msg.c:61) >>> ==29384== by 0x7D2490A: nta_msg_create (nta.c:2831) >>> ==29384== by 0x7D4336A: nua_client_request_template (nua_stack.c: >>> 2361) >>> ==29384== by 0x7D42C8E: nua_client_init_request (nua_stack.c:2223) >>> ==29384== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29384== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29384== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29384== by 0x7DA2FA9: su_base_port_execute_msgs (su_base_port.c: >>> 276) >>> ==29384== by 0x7DA2D50: su_base_port_getmsgs (su_base_port.c:198) >>> ==29384== by 0x7DA3084: su_base_port_run (su_base_port.c:331) >>> ==29384== >>> ==29384== LEAK SUMMARY: >>> ==29384== definitely lost: 108,035 bytes in 303 blocks. >>> ==29384== indirectly lost: 85,177 bytes in 972 blocks. >>> ==29384== possibly lost: 2,535 bytes in 13 blocks. >>> ==29384== still reachable: 16,325,250 bytes in 524 blocks. >>> ==29384== suppressed: 0 bytes in 0 blocks. >>> >>> = >>> = >>> = >>> = >>> = >>> = >>> ====================================================================== >>> 1000 calls' log >>> = >>> = >>> = >>> = >>> = >>> = >>> ====================================================================== >>> ==29612== >>> ==29612== 3,024 bytes in 6 blocks are still reachable in loss record >>> 39 of >>> 64 >>> ==29612== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29612== by 0x7D98CC1: su_home_new (su_alloc.c:559) >>> ==29612== by 0x7D06390: msg_create (msg.c:61) >>> ==29612== by 0x7D2490A: nta_msg_create (nta.c:2831) >>> ==29612== by 0x7D4336A: nua_client_request_template (nua_stack.c: >>> 2361) >>> ==29612== by 0x7D42C8E: nua_client_init_request (nua_stack.c:2223) >>> ==29612== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29612== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29612== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29612== by 0x7DA2FA9: su_base_port_execute_msgs (su_base_port.c: >>> 276) >>> ==29612== by 0x7DA2D50: su_base_port_getmsgs (su_base_port.c:198) >>> ==29612== by 0x7DA3084: su_base_port_run (su_base_port.c:331) >>> ==29612== >>> ==29612== >>> ==29612== 3,692 bytes in 13 blocks are possibly lost in loss record >>> 43 of 64 >>> ==29612== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29612== by 0x7D98B43: su_hash_alloc (su_alloc.c:390) >>> ==29612== by 0x7D98CDE: su_home_new (su_alloc.c:562) >>> ==29612== by 0x7D06390: msg_create (msg.c:61) >>> ==29612== by 0x7D2490A: nta_msg_create (nta.c:2831) >>> ==29612== by 0x7D4336A: nua_client_request_template (nua_stack.c: >>> 2361) >>> ==29612== by 0x7D42C8E: nua_client_init_request (nua_stack.c:2223) >>> ==29612== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29612== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29612== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29612== by 0x7DA2FA9: su_base_port_execute_msgs (su_base_port.c: >>> 276) >>> ==29612== by 0x7DA2D50: su_base_port_getmsgs (su_base_port.c:198) >>> ==29612== >>> ==29612== >>> ==29612== 4,322 bytes in 55 blocks are possibly lost in loss record >>> 47 of 64 >>> ==29612== at 0x4022B08: malloc (vg_replace_malloc.c:207) >>> ==29612== by 0x7D989A2: sub_alloc (su_alloc.c:490) >>> ==29612== by 0x7D9929E: su_alloc (su_alloc.c:771) >>> ==29612== by 0x7D9CAA2: su_strdup (su_strdup.c:55) >>> ==29612== by 0x7D05AF3: msg_header_add_str (msg_parser.c:2759) >>> ==29612== by 0x7D7B534: sip_add_tagis (sip_tag_class.c:260) >>> ==29612== by 0x7D42EB4: nua_client_init_request (nua_stack.c:2278) >>> ==29612== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29612== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29612== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29612== by 0x7DA2FA9: su_base_port_execute_msgs (su_base_port.c: >>> 276) >>> ==29612== by 0x7DA2D50: su_base_port_getmsgs (su_base_port.c:198) >>> ==29612== >>> ==29612== >>> ==29612== 5,360 bytes in 10 blocks are still reachable in loss >>> record 49 of >>> 64 >>> ==29612== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29612== by 0x7D9ABB4: su_zalloc (su_alloc.c:1437) >>> ==29612== by 0x7DA0A84: su_msg_new (su_root.c:901) >>> ==29612== by 0x7D3E4CB: nua_signal (nua_stack.c:495) >>> ==29612== by 0x7D46FF7: nua_invite (nua.c:633) >>> ==29612== by 0x7CEB0DE: sofia_glue_do_invite (sofia_glue.c:1305) >>> ==29612== by 0x7CCA773: sofia_on_init (mod_sofia.c:99) >>> ==29612== by 0x40A630D: switch_core_session_run >>> (switch_core_state_machine.c:415) >>> ==29612== by 0x40A52F4: switch_core_session_thread >>> (switch_core_session.c:787) >>> ==29612== by 0x40FC695: dummy_worker (thread.c:138) >>> ==29612== by 0x41EB191: start_thread (in /lib/libpthread-2.6.1.so) >>> ==29612== by 0x42F502D: clone (in /lib/libc-2.6.1.so) >>> ==29612== >>> ==29612== >>> ==29612== 5,360 bytes in 10 blocks are possibly lost in loss record >>> 50 of 64 >>> ==29612== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29612== by 0x7D9ABB4: su_zalloc (su_alloc.c:1437) >>> ==29612== by 0x7DA0A84: su_msg_new (su_root.c:901) >>> ==29612== by 0x7D3E4CB: nua_signal (nua_stack.c:495) >>> ==29612== by 0x7D46FF7: nua_invite (nua.c:633) >>> ==29612== by 0x7CEB0DE: sofia_glue_do_invite (sofia_glue.c:1305) >>> ==29612== by 0x7CCA773: sofia_on_init (mod_sofia.c:99) >>> ==29612== by 0x40A630D: switch_core_session_run >>> (switch_core_state_machine.c:415) >>> ==29612== by 0x40A52F4: switch_core_session_thread >>> (switch_core_session.c:787) >>> ==29612== by 0x40FC695: dummy_worker (thread.c:138) >>> ==29612== by 0x41EB191: start_thread (in /lib/libpthread-2.6.1.so) >>> ==29612== by 0x42F502D: clone (in /lib/libc-2.6.1.so) >>> ==29612== >>> ==29612== >>> ==29612== 7,056 bytes in 14 blocks are possibly lost in loss record >>> 51 of 64 >>> ==29612== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29612== by 0x7D98CC1: su_home_new (su_alloc.c:559) >>> ==29612== by 0x7D06390: msg_create (msg.c:61) >>> ==29612== by 0x7D2490A: nta_msg_create (nta.c:2831) >>> ==29612== by 0x7D4336A: nua_client_request_template (nua_stack.c: >>> 2361) >>> ==29612== by 0x7D42C8E: nua_client_init_request (nua_stack.c:2223) >>> ==29612== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29612== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29612== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29612== by 0x7DA2FA9: su_base_port_execute_msgs (su_base_port.c: >>> 276) >>> ==29612== by 0x7DA2D50: su_base_port_getmsgs (su_base_port.c:198) >>> ==29612== by 0x7DA3084: su_base_port_run (su_base_port.c:331) >>> ==29612== >>> ==29612== >>> ==29612== 9,940 bytes in 35 blocks are still reachable in loss >>> record 54 of >>> 64 >>> ==29612== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29612== by 0x7D98B43: su_hash_alloc (su_alloc.c:390) >>> ==29612== by 0x7D98CDE: su_home_new (su_alloc.c:562) >>> ==29612== by 0x7D06390: msg_create (msg.c:61) >>> ==29612== by 0x7D2490A: nta_msg_create (nta.c:2831) >>> ==29612== by 0x7D4336A: nua_client_request_template (nua_stack.c: >>> 2361) >>> ==29612== by 0x7D42C8E: nua_client_init_request (nua_stack.c:2223) >>> ==29612== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29612== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29612== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29612== by 0x7DA2FA9: su_base_port_execute_msgs (su_base_port.c: >>> 276) >>> ==29612== by 0x7DA2D50: su_base_port_getmsgs (su_base_port.c:198) >>> ==29612== >>> ==29612== >>> ==29612== >>> ==29612== 43,590 bytes in 663 blocks are still reachable in loss >>> record 57 >>> of 64 >>> ==29612== at 0x4022B08: malloc (vg_replace_malloc.c:207) >>> ==29612== by 0x7D989A2: sub_alloc (su_alloc.c:490) >>> ==29612== by 0x7D9929E: su_alloc (su_alloc.c:771) >>> ==29612== by 0x7D9CAA2: su_strdup (su_strdup.c:55) >>> ==29612== by 0x7DA8FC9: su_vsprintf (su_sprintf.c:80) >>> ==29612== by 0x7DA90FA: su_sprintf (su_sprintf.c:125) >>> ==29612== by 0x7D75737: sip_addr_tag (sip_basic.c:993) >>> ==29612== by 0x7D765F1: sip_from_tag (sip_basic.c:1857) >>> ==29612== by 0x7D43155: nua_client_init_request (nua_stack.c:2322) >>> ==29612== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29612== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29612== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29612== >>> ==29612== >>> ==29612== 55,728 bytes in 1 blocks are still reachable in loss >>> record 58 of >>> 64 >>> ==29612== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29612== by 0xFCE0A57: sf_open (sndfile.c:285) >>> ==29612== by 0xFCD9FD3: ??? (mod_sndfile.c:174) >>> ==29612== by 0x40A04A1: switch_core_perform_file_open >>> (switch_core_file.c:100) >>> ==29612== by 0xFD3549A: ??? (mod_local_stream.c:178) >>> ==29612== by 0x40FC695: dummy_worker (thread.c:138) >>> ==29612== by 0x41EB191: start_thread (in /lib/libpthread-2.6.1.so) >>> ==29612== by 0x42F502D: clone (in /lib/libc-2.6.1.so) >>> ==29612== >>> ==29612== >>> ==29612== 270,368 bytes in 952 blocks are indirectly lost in loss >>> record 59 >>> of 64 >>> ==29612== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29612== by 0x7D98B43: su_hash_alloc (su_alloc.c:390) >>> ==29612== by 0x7D98CDE: su_home_new (su_alloc.c:562) >>> ==29612== by 0x7D06390: msg_create (msg.c:61) >>> ==29612== by 0x7D2490A: nta_msg_create (nta.c:2831) >>> ==29612== by 0x7D4336A: nua_client_request_template (nua_stack.c: >>> 2361) >>> ==29612== by 0x7D42C8E: nua_client_init_request (nua_stack.c:2223) >>> ==29612== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29612== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29612== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29612== by 0x7DA2FA9: su_base_port_execute_msgs (su_base_port.c: >>> 276) >>> ==29612== by 0x7DA2D50: su_base_port_getmsgs (su_base_port.c:198) >>> ==29612== >>> ==29612== >>> ==29612== 542,088 bytes in 8,282 blocks are indirectly lost in loss >>> record >>> 60 of 64 >>> ==29612== at 0x4022B08: malloc (vg_replace_malloc.c:207) >>> ==29612== by 0x7D989A2: sub_alloc (su_alloc.c:490) >>> ==29612== by 0x7D9929E: su_alloc (su_alloc.c:771) >>> ==29612== by 0x7D04E15: msg_header_alloc (msg_parser.c:2309) >>> ==29612== by 0x7D0273D: header_parse (msg_parser.c:1114) >>> ==29612== by 0x7D025E3: extract_header (msg_parser.c:1071) >>> ==29612== by 0x7D02315: msg_extract_header (msg_parser.c:1008) >>> ==29612== by 0x7D05BD2: msg_header_parse_str (msg_parser.c:2801) >>> ==29612== by 0x7D05B1E: msg_header_add_str (msg_parser.c:2764) >>> ==29612== by 0x7D7B534: sip_add_tagis (sip_tag_class.c:260) >>> ==29612== by 0x7D42EB4: nua_client_init_request (nua_stack.c:2278) >>> ==29612== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29612== >>> ==29612== >>> ==29612== 1,305,502 (493,920 direct, 811,582 indirect) bytes in 980 >>> blocks >>> are definitely lost in loss record 62 of 64 >>> ==29612== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29612== by 0x7D98CC1: su_home_new (su_alloc.c:559) >>> ==29612== by 0x7D06390: msg_create (msg.c:61) >>> ==29612== by 0x7D2490A: nta_msg_create (nta.c:2831) >>> ==29612== by 0x7D4336A: nua_client_request_template (nua_stack.c: >>> 2361) >>> ==29612== by 0x7D42C8E: nua_client_init_request (nua_stack.c:2223) >>> ==29612== by 0x7D4256D: nua_client_create (nua_stack.c:2043) >>> ==29612== by 0x7D55125: nua_stack_invite (nua_session.c:701) >>> ==29612== by 0x7D3EA92: nua_stack_signal (nua_stack.c:592) >>> ==29612== by 0x7DA2FA9: su_base_port_execute_msgs (su_base_port.c: >>> 276) >>> ==29612== by 0x7DA2D50: su_base_port_getmsgs (su_base_port.c:198) >>> ==29612== by 0x7DA3084: su_base_port_run (su_base_port.c:331) >>> ==29612== >>> ==29612== >>> ==29612== 526,154 (525,280 direct, 874 indirect) bytes in 980 blocks >>> are >>> definitely lost in loss record 63 of 64 >>> ==29612== at 0x4021C2E: calloc (vg_replace_malloc.c:397) >>> ==29612== by 0x7D9ABB4: su_zalloc (su_alloc.c:1437) >>> ==29612== by 0x7DA0A84: su_msg_new (su_root.c:901) >>> ==29612== by 0x7D3E4CB: nua_signal (nua_stack.c:495) >>> ==29612== by 0x7D46FF7: nua_invite (nua.c:633) >>> ==29612== by 0x7CEB0DE: sofia_glue_do_invite (sofia_glue.c:1305) >>> ==29612== by 0x7CCA773: sofia_on_init (mod_sofia.c:99) >>> ==29612== by 0x40A630D: switch_core_session_run >>> (switch_core_state_machine.c:415) >>> ==29612== by 0x40A52F4: switch_core_session_thread >>> (switch_core_session.c:787) >>> ==29612== by 0x40FC695: dummy_worker (thread.c:138) >>> ==29612== by 0x41EB191: start_thread (in /lib/libpthread-2.6.1.so) >>> ==29612== by 0x42F502D: clone (in /lib/libc-2.6.1.so) >>> ==29612== >>> ==29612== LEAK SUMMARY: >>> ==29612== definitely lost: 1,024,811 bytes in 2,066 blocks. >>> ==29612== indirectly lost: 812,483 bytes in 9,236 blocks. >>> ==29612== possibly lost: 20,718 bytes in 94 blocks. >>> ==29612== still reachable: 16,441,313 bytes in 1,217 blocks. >>> ==29612== suppressed: 0 bytes in 0 blocks. >>> >>>> -----Original Message----- >>>> From: [EMAIL PROTECTED] [mailto:freeswitch- >>>> [EMAIL PROTECTED] On Behalf Of Michael Jerris >>>> Sent: Wednesday, July 30, 2008 11:26 PM >>>> To: [email protected] >>>> Subject: Re: [Freeswitch-users] Memory Leaks >>>> >>>> >>>> On Jul 30, 2008, at 8:33 AM, Sangwoo Jin wrote: >>>> >>>>> Hi, >>>>> >>>>> I I'm testing freeswitch with sipp. >>>>> My test configuration is the following: >>>>> Sipp(caller) -> freeswitch -> Sipp(callee)s >>>>> Testing loads are 5 CPS ~ 30 CPS and caller has hanged up a call as >>>>> soon as >>>>> receiving 200 OK. >>>>> >>>>> In this testing environment, freeswitch's used memory is growing >>>>> continuously. >>>>> >>>>> The following is the valgrind's log on testing with 5 CPS 100 calls. >>>>> >>>> <snip> >>>> >>>>> >>>>> >>>>> Is this problem's cause configuration mistake or freeswitch's bug? >>>>> >>>>> Sangwoo Jin >>>>> >>>>> >>>> >>>> >>>> You will need to compare the valgrind output from about 100 calls to >>>> about 1000 calls to see which are actually larger. Also, please make >>>> sure you are using current svn trunk. Most of the items in that list >>>> appear to be things that we allocate at startup and never bother to >>>> free as they are free when the application stops. Those items are >>>> supposed to be allocated for the entire life of the switch. If you >>>> have reports that are definitely more please report this to our bug >>>> tracker at http://jira.freeswitch.org with exact details how you are >>>> testing including how you are initiating the call and your dialplan. >>>> >>>> Mike >>>> >>>> >>>> _______________________________________________ >>>> Freeswitch-users mailing list >>>> [email protected] >>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users >>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch- >> users >>>> http://www.freeswitch.org >>> >>> >>> _______________________________________________ >>> Freeswitch-users mailing list >>> [email protected] >>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users >>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users >>> http://www.freeswitch.org >> >> >> _______________________________________________ >> Freeswitch-users mailing list >> [email protected] >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users >> http://www.freeswitch.org > > > _______________________________________________ > Freeswitch-users mailing list > [email protected] > http://lists.freeswitch.org/mailman/listinfo/freeswitch-users > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users > http://www.freeswitch.org _______________________________________________ Freeswitch-users mailing list [email protected] http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
