|
From: Bill T. <bil...@ve...> - 2004-04-08 14:46:48
|
I'm trying to set up a fairly broad suppression entry to exclude leak
checking in xerces/xalan libraries. The entries look like:
{
xerces
Memcheck:Leak
obj:*libxerces*
fun:*
}
{
xalan
Memcheck:Leak
obj:*libxalan*
fun:*
}
It looks like vg is picking up the file:
==4709== Reading suppressions file: /home/torpey/MXLib/dev/mxlib.supp
but the only entries listed are:
--4709-- supp: 55 Ugly strchr error in /lib/ld-2.3.2.so
--4709-- supp: 6 pthread_mutex_unlock/_IO_funlockfile
--4709-- supp: 8 realpath is inefficiently coded
From docs, it sounds like suppression entries only get listed if they are
used, so I suppose that mine did not. Nevertheless, there are a bunch of
reports, of the general form:
==4709==
==4709== 4 bytes in 1 blocks are still reachable in loss record 1 of 864
==4709== at 0x3C01C3B4: operator new(unsigned) (vg_replace_malloc.c:107)
==4709== by 0x3C651CE5: xercesc_2_2::gScannerMutex() (in
/home/torpey/gcc32-32/xerces-c-src2_2_0/lib/libxerces-c.so.22.0)
==4709== by 0x3C653F50: xercesc_2_2::XMLScanner::commonInit() (in
/home/torpey/gcc32-32/xerces-c-src2_2_0/lib/libxerces-c.so.22.0)
==4709== by 0x3C6521A2:
xercesc_2_2::XMLScanner::XMLScanner(xercesc_2_2::XMLValidator*) (in
/home/torpey/gcc32-32/xerces-c-src2_2_0/lib/libxerces-c.so.22.0)
==4709== by 0x3C5C9C99:
xercesc_2_2::IGXMLScanner::IGXMLScanner(xercesc_2_2::XMLValidator*) (in
/home/torpey/gcc32-32/xerces-c-src2_2_0/lib/libxerces-c.so.22.0)
==4709== by 0x3C656858:
xercesc_2_2::XMLScannerResolver::getDefaultScanner(xercesc_2_2::XMLValidator
*) (in /home/torpey/gcc32-32/xerces-c-src2_2_0/lib/libxerces-c.so.22.0)
==4709== by 0x3C5F7DC0: xercesc_2_2::SAX2XMLReaderImpl::initialize() (in
/home/torpey/gcc32-32/xerces-c-src2_2_0/lib/libxerces-c.so.22.0)
==4709== by 0x3C5F7A8D:
xercesc_2_2::SAX2XMLReaderImpl::SAX2XMLReaderImpl() (in
/home/torpey/gcc32-32/xerces-c-src2_2_0/lib/libxerces-c.so.22.0)
==4709== by 0x3C331ED8:
xalanc_1_5::XalanSourceTreeParserLiaison::createReader() (in
/home/torpey/gcc32-32/xml-xalan/c/lib/libxalan-c1_5_0.so)
==4709== by 0x3C3317D8:
xalanc_1_5::XalanSourceTreeParserLiaison::parseXMLStream(xercesc_2_2::InputS
ource const&, xalanc_1_5::XalanDOMString const&) (in
/home/torpey/gcc32-32/xml-xalan/c/lib/libxalan-c1_5_0.so)
==4709== by 0x80572F3: XMLConfig::ParseXML(char const*)
(../XMLConfig/XMLConfig_xalan.h:221)
==4709== by 0x8055D96: XMLConfig::loadFile(char const*)
(../XMLConfig/XMLConfig_xalan.h:204)
==4709== by 0x80551BB: XMLConfig::XMLConfig(char const*)
(../XMLConfig/XMLConfig_xalan.h:145)
==4709== by 0x8051661: main (xla.cpp:606)
==4709==
If anyone has any experience getting wildcard suppression entries to work, I
would certainly appreciate some pointers. The '--gen-suppressions' option
is useless in this case because there are just too many potential entries.
I'm running valgrind 2.1.1. Parameters are:
==4709== Startup, with flags:
==4709== --tool=memcheck
==4709== --verbose
==4709== --leak-check=yes
==4709== --leak-resolution=high
==4709== --num-callers=20
==4709== --show-reachable=yes
==4709== --workaround-gcc296-bugs=yes
==4709== --suppressions=/home/torpey/MXLib/dev/mxlib.supp
Thanks in advance for any help!
|