[asterisk-users] "Hidden" memory leak

CHEN XUEQIN chenxq at star-net.cn
Wed Jun 23 20:33:58 CDT 2010


于 2010年06月24日 04:45, Miguel Molina 写道:

> Hi all,
>
> Anyone know why this happens?
>
> Mem: 524288k total, 508120k used, 16168k free, 0k buffers
> Swap: 0k total, 0k used, 0k free, 0k cached
>
> PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
> 1 root 15 0 2152 664 576 S 0.0 0.1 0:49.26 init
> 7398 root 18 0 10172 2904 2312 S 0.0 0.6 0:00.21 sshd
> 9856 root 15 0 4756 1528 1232 S 0.0 0.3 0:00.06 bash
> 11316 root 15 0 3332 1112 572 S 0.0 0.2 0:01.14 crond
> 16282 root 25 0 4756 1008 820 S 0.0 0.2 0:00.00 safe_asterisk
> 22514 root 25 0 494m *445m* 6612 S 0.0 *87.0* 663:08.66 asterisk
>
> virtual1_ast1*CLI> memory show summary
> 4644 bytes in 2 allocations in file 'res_timing_pthread.c'
> 4096 bytes in 1 allocations in file 'chan_unistim.c'
> 484 bytes in 1 allocations in file 'res_clialiases.c'
> 96 bytes in 2 allocations in file 'devicestate.c'
> 244 bytes in 1 allocations in file 'iax2-provision.c'
> 660 bytes in 1 allocations in file 'chan_agent.c'
> 14 bytes in 2 allocations in file 'http.c'
> 1336 bytes in 4 allocations in file 'hashtab.c'
> 812 bytes in 2 allocations in file
> '/usr/src/asterisk-1.6.2.9-rc3/include/asterisk/strings.h'
> 484 bytes in 1 allocations in file 'bridge_multiplexed.c'
> 24648 bytes in 2 allocations in file 'stdtime/localtime.c'
> 11624 bytes in 9 allocations in file 'app_voicemail.c'
> 568 bytes in 3 allocations in file 'logger.c'
> 3410 bytes in 4 allocations in file 'chan_oss.c'
> 356 bytes in 1 allocations in file 'func_dialgroup.c'
> 548 bytes in 2 allocations in file 'features.c'
> 80 bytes in 10 allocations in file 'channel.c'
> 324 bytes in 3 allocations in file 'cdr.c'
> 84 bytes in 4 allocations in file 'timing.c'
> 484 bytes in 1 allocations in file 'app_confbridge.c'
> 779 bytes in 13 allocations in file 'taskprocessor.c'
> 4752 bytes in 22 allocations in file 'file.c'
> 14656 bytes in 162 allocations in file 'sched.c'
> 2128 bytes in 79 allocations in file 'manager.c'
> 1400 bytes in 6 allocations in file 'res_musiconhold.c'
> 25440 bytes in 2 allocations in file 'app_followme.c'
> 4260 bytes in 16 allocations in file
> '/usr/src/asterisk-1.6.2.9-rc3/include/asterisk/threadstorage.h'
> 11713 bytes in 49 allocations in file 'res_phoneprov.c'
> 30888 bytes in 24 allocations in file 'io.c'
> 637 bytes in 22 allocations in file 'cdr_pgsql.c'
> 9312 bytes in 3 allocations in file 'mpool/mpool.c'
> 2590 bytes in 35 allocations in file 'utils.c'
> 35963 bytes in 10 allocations in file 'app_minivm.c'
> 15078 bytes in 498 allocations in file 'loader.c'
> 9686 bytes in 485 allocations in file 'cli.c'
> 208348 bytes in 342 allocations in file 'chan_sip.c'
> 39199 bytes in 1191 allocations in file 'indications.c'
> 7809 bytes in 281 allocations in file 'asterisk.c'
> 22413 bytes in 285 allocations in file 'config.c'
> 2077300 bytes in 32793 allocations in file 'chan_iax2.c'
> 212 bytes in 3 allocations in file 'netsock.c'
> 45309 bytes in 539 allocations in file 'xmldoc.c'
> 99512 bytes in 239 allocations in file 'app_queue.c'
> 23080 bytes ( 23080 cache) in 73 allocations in file 'frame.c'
> 3308 bytes in 139 allocations in file 'pbx_config.c'
> 379223 bytes in 1940 allocations in file 'pbx.c'
> 434640 bytes in 36220 allocations in file 'astobj2.c'
> 392396 bytes in 6331 allocations in file 'event.c'
> *3957027 *bytes allocated (23080 in caches) in 81858 allocations
>
> Anoyone knows why the memory leak is not shown in the asterisk malloc
> debug, and how can I figure what's causing it? The asterisk version is
> 1.6.2.9.

Memeory leak here too, my asterisk version is 1.2.24. I just used fastagi for
call control. The amount of memeory leak reached 1 GB or higher. And aslo the
leak is not shown in asterisk memory debug tool.

How to debug external libraries memory leak? Any tool available?


Regards,
Chen Xueqin



More information about the asterisk-users mailing list