[zeromq-dev] Memory leak(?) between Push/Pull

Stefan de Konink stefan at konink.de
Thu Dec 6 16:49:18 CET 2012


On Thu, 6 Dec 2012, Justin Cook wrote:

> This also depends on memory block sizes and the operating system's 
> management of memory pools…fragmentation and the like.

It seems I can perfectly reproduce this with 2.2.0 but not with 3.2, so 
maybe this is already fixed (it shows much lower values there).

==31676== 4,522,760 bytes in 113,069 blocks are still reachable in loss 
record 37 of 38
==31676==    at 0x4C2C63B: malloc (in 
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==31676==    by 0x4E59035: zmq_msg_init_data (in 
/usr/lib64/libzmq.so.1.0.1)
==31676==    by 0x4008F7: main (in /tmp/test-push)
==31676==
==31676== 4,543,408 bytes in 443 blocks are still reachable in loss record 
38 of 38
==31676==    at 0x4C2C63B: malloc (in 
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==31676==    by 0x4E4B70B: zmq::writer_t::write(zmq_msg_t*) (in 
/usr/lib64/libzmq.so.1.0.1)
==31676==    by 0x4E46BD2: zmq::lb_t::send(zmq_msg_t*, int) (in 
/usr/lib64/libzmq.so.1.0.1)
==31676==    by 0x4E51803: zmq::socket_base_t::send(zmq_msg_t*, int) (in 
/usr/lib64/libzmq.so.1.0.1)
==31676==    by 0x400931: main (in /tmp/test-push)
==31676==
==31676== LEAK SUMMARY:
==31676==    definitely lost: 0 bytes in 0 blocks
==31676==    indirectly lost: 0 bytes in 0 blocks
==31676==      possibly lost: 17,549 bytes in 9 blocks
==31676==    still reachable: 9,082,240 bytes in 113,539 blocks
==31676==         suppressed: 0 bytes in 0 blocks


Stefan


More information about the zeromq-dev mailing list