I have an application that does snmp bulk get, I ran into problem with memory leak, below is a report from valgrind.

Could you please tell me what is needed to be done in order to free those blocks.

Thank you very much.


==14475== definitely lost: 32 bytes in 2 blocks.
==14475== possibly lost:   13200 bytes in 3 blocks.
==14475== still reachable: 148554 bytes in 270 blocks.
==14475==
==14475== 1 bytes in 1 blocks are still reachable in loss record 1 of 32
==14475==    at 0x4003C0EB: calloc (in /usr/lib/valgrind/valgrind.so)
==14475==    by 0x40277E97: _sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40278102: snmp_sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x402788C5: _sess_open (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 1 bytes in 1 blocks are still reachable in loss record 2 of 32
==14475==    at 0x4003C0EB: calloc (in /usr/lib/valgrind/valgrind.so)
==14475==    by 0x40278072: _sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40278102: snmp_sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x402788C5: _sess_open (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 4 bytes in 1 blocks are still reachable in loss record 3 of 32
==14475==    at 0x4003BC55: malloc (in /usr/lib/valgrind/valgrind.so)
==14475== by 0x4026D2E2: init_tree_roots (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40276F5C: _init_snmp (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x4027702F: snmp_sess_init (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 6 bytes in 1 blocks are still reachable in loss record 4 of 32
==14475==    at 0x4003BC55: malloc (in /usr/lib/valgrind/valgrind.so)
==14475== by 0x402A5BC8: netsnmp_udp_transport (in /usr/lib/libnetsnmp.so.5.0.8) ==14475== by 0x402A72F0: netsnmp_udp_create_tstring (in /usr/lib/libnetsnmp.so.5.0.8) ==14475== by 0x402A4E44: netsnmp_tdomain_transport (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 6 bytes in 1 blocks are still reachable in loss record 5 of 32
==14475==    at 0x4003BC55: malloc (in /usr/lib/valgrind/valgrind.so)
==14475== by 0x4026D234: init_tree_roots (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40276F5C: _init_snmp (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x4027702F: snmp_sess_init (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 8 bytes in 1 blocks are still reachable in loss record 8 of 32
==14475==    at 0x4003C0EB: calloc (in /usr/lib/valgrind/valgrind.so)
==14475== by 0x402A91EF: netsnmp_unix_ctor (in /usr/lib/libnetsnmp.so.5.0.8) ==14475== by 0x402A48A2: netsnmp_tdomain_init (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40276F61: _init_snmp (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 8 bytes in 1 blocks are still reachable in loss record 9 of 32
==14475==    at 0x4003C0EB: calloc (in /usr/lib/valgrind/valgrind.so)
==14475== by 0x402A801F: netsnmp_tcp_ctor (in /usr/lib/libnetsnmp.so.5.0.8) ==14475== by 0x402A489D: netsnmp_tdomain_init (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40276F61: _init_snmp (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 8 bytes in 1 blocks are still reachable in loss record 10 of 32
==14475==    at 0x4003C0EB: calloc (in /usr/lib/valgrind/valgrind.so)
==14475== by 0x402A73A2: netsnmp_udp_ctor (in /usr/lib/libnetsnmp.so.5.0.8) ==14475== by 0x402A4898: netsnmp_tdomain_init (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40276F61: _init_snmp (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 16 bytes in 1 blocks are still reachable in loss record 11 of 32
==14475==    at 0x4003BC55: malloc (in /usr/lib/valgrind/valgrind.so)
==14475==    by 0x40278091: _sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40278102: snmp_sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x402788C5: _sess_open (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 16 bytes in 1 blocks are definitely lost in loss record 12 of 32
==14475==    at 0x4003C0EB: calloc (in /usr/lib/valgrind/valgrind.so)
==14475==    by 0x40277A19: _sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40278102: snmp_sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x402788C5: _sess_open (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 16 bytes in 1 blocks are still reachable in loss record 13 of 32
==14475==    at 0x4003BC55: malloc (in /usr/lib/valgrind/valgrind.so)
==14475== by 0x4026D17A: init_tree_roots (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40276F5C: _init_snmp (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x4027702F: snmp_sess_init (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475==
==14475== 26 bytes in 3 blocks are still reachable in loss record 17 of 32
==14475==    at 0x4003BC55: malloc (in /usr/lib/valgrind/valgrind.so)
==14475==    by 0x405065D0: __strdup (in /lib/libc.so.6)
==14475== by 0x4026D1F5: init_tree_roots (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40276F5C: _init_snmp (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475==
==14475== 48 bytes in 1 blocks are still reachable in loss record 19 of 32
==14475==    at 0x4003C0EB: calloc (in /usr/lib/valgrind/valgrind.so)
==14475==    by 0x40277A42: _sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40278102: snmp_sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x402788C5: _sess_open (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 54 bytes in 3 blocks are still reachable in loss record 20 of 32
==14475==    at 0x4003BC55: malloc (in /usr/lib/valgrind/valgrind.so)
==14475==    by 0x40571055: inet_ntoa (in /lib/libc.so.6)
==14475== by 0x402A54E8: netsnmp_udp_fmtaddr (in /usr/lib/libnetsnmp.so.5.0.8) ==14475== by 0x402A5AAC: netsnmp_udp_transport (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 64 bytes in 1 blocks are still reachable in loss record 21 of 32
==14475==    at 0x4003BC55: malloc (in /usr/lib/valgrind/valgrind.so)
==14475== by 0x402A5A8C: netsnmp_udp_transport (in /usr/lib/libnetsnmp.so.5.0.8) ==14475== by 0x402A72F0: netsnmp_udp_create_tstring (in /usr/lib/libnetsnmp.so.5.0.8) ==14475== by 0x402A4E44: netsnmp_tdomain_transport (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475==
==14475== 80 bytes in 2 blocks are still reachable in loss record 23 of 32
==14475==    at 0x4003BC55: malloc (in /usr/lib/valgrind/valgrind.so)
==14475== by 0x4028AAFF: snmp_duplicate_objid (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40277FDE: _sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40278102: snmp_sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 100 bytes in 1 blocks are still reachable in loss record 24 of 32
==14475==    at 0x4003C0EB: calloc (in /usr/lib/valgrind/valgrind.so)
==14475== by 0x4026D2C6: init_tree_roots (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40276F5C: _init_snmp (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x4027702F: snmp_sess_init (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 100 bytes in 1 blocks are still reachable in loss record 25 of 32
==14475==    at 0x4003C0EB: calloc (in /usr/lib/valgrind/valgrind.so)
==14475== by 0x4026D215: init_tree_roots (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40276F5C: _init_snmp (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x4027702F: snmp_sess_init (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475== 100 bytes in 1 blocks are still reachable in loss record 26 of 32
==14475==    at 0x4003C0EB: calloc (in /usr/lib/valgrind/valgrind.so)
==14475== by 0x4026D161: init_tree_roots (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40276F5C: _init_snmp (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x4027702F: snmp_sess_init (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475==
==14475== 220 bytes in 1 blocks are still reachable in loss record 28 of 32
==14475==    at 0x4003BC55: malloc (in /usr/lib/valgrind/valgrind.so)
==14475==    by 0x40277A5C: _sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x40278102: snmp_sess_copy (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==    by 0x402788C5: _sess_open (in /usr/lib/libnetsnmp.so.5.0.8)
==14475==
==14475==
==14475== LEAK SUMMARY:
==14475==    definitely lost: 32 bytes in 2 blocks.
==14475==    possibly lost:   13200 bytes in 3 blocks.
==14475==    still reachable: 148554 bytes in 270 blocks.
==14475==




-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
Net-snmp-coders mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders

Reply via email to