Next leak: comm code?

From: Adrian Chadd <adrian@dont-contact.us>
Date: Wed, 11 Feb 2004 20:59:14 -0700

Hi all,

I've got myself a little memory leak. We're leaking the fwdState
mempool allocations. A leaked allocation looks like this:

2004/02/11 16:00:12.976| cbdataAlloc: 0x84e2010 forward.cc:914
2004/02/11 16:00:12.976| cbdataLock: 0x84e2010=1 peer_select.cc:169
2004/02/11 16:00:12.977| cbdataReferenceValid: 0x84e2010
2004/02/11 16:00:12.977| cbdataUnlock: 0x84e2010=0 peer_select.cc:234
2004/02/11 16:00:12.977| cbdataLock: 0x84e2010=1 comm.cc:1965
2004/02/11 16:00:12.977| cbdataLock: 0x84e2010=2 comm.cc:1544
2004/02/11 16:00:12.977| cbdataLock: 0x84e2010=3 comm.cc:1305
2004/02/11 16:00:12.977| cbdataLock: 0x84e2010=4 CommRead.h:57
2004/02/11 16:00:12.977| cbdataLock: 0x84e2010=5 CommRead.h:99
2004/02/11 16:00:12.977| cbdataUnlock: 0x84e2010=4 CommRead.h:102
2004/02/11 16:00:12.985| cbdataLock: 0x84e2010=5 CommRead.h:63
2004/02/11 16:00:12.985| cbdataUnlock: 0x84e2010=4 CommRead.h:102
2004/02/11 16:00:12.985| cbdataUnlock: 0x84e2010=3 comm.cc:1535
2004/02/11 16:00:12.985| cbdataReferenceValid: 0x84e2010
2004/02/11 16:00:12.987| cbdataUnlock: 0x84e2010=2 comm.cc:1351
2004/02/11 16:00:13.006| cbdataReferenceValid: 0x84e2010
2004/02/11 16:00:13.006| cbdataFree: 0x84e2010 forward.cc:149
2004/02/11 16:00:13.006| cbdataFree: 0x84e2010 has 2 locks, not freeing
2004/02/11 16:00:13.006| cbdataUnlock: 0x84e2010=1 comm.cc:1702

.. now, I've traced the leak back to the CallBack class thing that
Robert has written but, as I'm not a C++ whiz, I can't easily tell
whether the leak is there or not.

I note, however, that all the other lock/unlocks can be paired off
save the ones in CommRead.h.

Here's my GCC:

adrian@mierda:~/work/squid/run3/var$ g++ -v
Reading specs from /usr/lib/gcc-lib/i486-linux/3.3.3/specs
Configured with: ../src/configure -v --enable-languages=c,c++,java,f77,pascal,objc,ada,treelang --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-gxx-include-dir=/usr/include/c++/3.3 --enable-shared --with-system-zlib --enable-nls --without-included-gettext --enable-__cxa_atexit --enable-clocale=gnu --enable-debug --enable-java-gc=boehm --enable-java-awt=xlib --enable-objc-gc i486-linux
Thread model: posix
gcc version 3.3.3 20040125 (prerelease) (Debian)

I'd appreciate some help on this. Currently, its the only leak
I've found in squid-3-cvs with ufs. I'm still seeing huge memoryleaking
when running aufs but I'll take a look at that after this.

Adrian
Received on Wed Feb 11 2004 - 20:59:16 MST

This archive was generated by hypermail pre-2.1.9 : Mon Mar 01 2004 - 12:00:04 MST