[Python-Dev] ast status, memory leaks, etc

"Martin v. Löwis" martin at v.loewis.de
Sun Nov 20 10:58:14 CET 2005


Neal Norwitz wrote:
> There are still 2 memory leaks while running the regression tests. 
> They show up when running test_fork1 and test_pty.  There may be more,
> valgrind crashed on me the last run which was also before I fixed some
> of the reference leaks.  It would be great if people could localize
> the leaks.

Can somebody please give a quick explanation how valgrind can give
*any* reasonable leak analysis when obmalloc is used? In the current
implementation, obmalloc never ever calls free(3), so all pool memory
should appear to have leaked.

So if valgrind does *not* report all memory as leaked: how does it
find out?

> 512 bytes in 1 blocks are definitely lost in loss record 319 of 548
>    at 0x11B1AF13: malloc (vg_replace_malloc.c:149)
>    by 0x433CC4: new_arena (obmalloc.c:500)

See

http://mail.python.org/pipermail/python-dev/2004-June/045253.html

This is the resizing of the list of arenas, which is a deliberate
leak. It just happened to be exhausted in this particular call
stack.

> 1280 bytes in 2 blocks are definitely lost in loss record 383 of 548
>    at 0x11B1AF13: malloc (vg_replace_malloc.c:149)
>    by 0x433CC4: new_arena (obmalloc.c:500)

Likewise.

Regards,
Martin


More information about the Python-Dev mailing list