Of course I'm using libumem and the appropriate enviroment variables are set. 
Thanks for the ::umausers dcmd. It is indeed very useful but I still can't find 
leaks that are related to the threads. All the threads are freeing the 
allocated buffers! Let me show you my findleaks result:

findleaks:                maximum buffers => 1450
findleaks:                 actual buffers => 1002
findleaks: 
findleaks:             potential pointers => 232820
findleaks:                     dismissals => 134110        (57.6%)
findleaks:                         misses => 86042         (36.9%)
findleaks:                           dups => 11693         ( 5.0%)
findleaks:                        follows => 975           ( 0.4%)
findleaks: 
findleaks:              elapsed wall time => 0 seconds
findleaks: 
BYTES             LEAKED         VMEM_SEG CALLER
8192                   9 ffffffff788ba000 MMAP
73728                  1 ffffffff7a1e4000 MMAP
16384                  1 ffffffff7a1b8000 MMAP
8192                   1 ffffffff79fba000 MMAP
8192                   1 ffffffff79dba000 MMAP
8192                   1 ffffffff79bba000 MMAP
8192                   1 ffffffff799ba000 MMAP
8192                   1 ffffffff78eba000 MMAP
8192                   1 ffffffff78aba000 MMAP
------------------------------------------------------------------------
           Total       9 oversized leaks, 147456 bytes

CACHE             LEAKED           BUFCTL CALLER
00000001002b4d28       1 00000001002e82d0 initializeOSNArray+0x9c
00000001002b49e8       1 00000001003f35e0 initializeOSNArray+0x2cc
00000001002b5068       1 00000001002e48e0 setString+0x140
00000001002b5068       1 00000001002e4640 setString+0x140
00000001002b5068       1 00000001002e4480 setString+0x140
00000001002b5068       1 00000001002e4720 setString+0x140
00000001002b53a8       1 00000001002db7e0 setString+0x140
00000001002b53a8       1 00000001002db8c0 setString+0x140
00000001002b4d28       1 00000001002f4100 setString+0x140
00000001002b5068       1 00000001002e4560 setString+0x140
00000001002b5068       1 00000001002e43a0 setString+0x140
00000001002b5068       1 00000001002e4800 setString+0x140
00000001002b4d28       1 00000001002f41e0 setString+0x140
00000001002b53a8       1 00000001002db700 setString+0x140
00000001002b53a8       1 00000001002db540 setString+0x140
00000001002b53a8       1 00000001002db620 setString+0x140
00000001002b53a8       1 0000000100506010 wp_enable_stats+0x18
00000001002be6a8       1 0000000100338d30 wp_new+0x34
----------------------------------------------------------------------
           Total      18 buffers, 696 bytes

The leaked size 696 bytes is not increased. How can I check the stack of the 
VMEM_SEG memory addresses?

The <address>$<bufctl_audit doesn't work for these, only for BUFCTL CALLER 
addresses. 

Many thanks for your help!
- marios
This message posted from opensolaris.org

Reply via email to