|
From: Stefan N. <st...@ma...> - 2003-09-15 19:20:00
|
Hi, I'm using Valgrind on a multithreaded application, and after all =
threads are created and set off, I get the following assert:
assert(mx->__m_count > 0)
It is extremely strange, because if I change some stuff in default.supp, =
I do not get it. I have added the following to default.supp:
{
Use_of_uninitialized_variables
Memcheck:Cond
obj:/lib/libc-2.2.5.so
}
{
Illegal_memory_access_of_2_bytes
Memcheck:Addr2
obj:/lib/libc-2.2.5.so
fun:_mcount
}
{
Illegal_memory_access_of_4_bytes
Memcheck:Addr4
obj:/lib/libc-2.2.5.so
fun:_mcount
}
Which takes care of a few bugs I apparently have on my system. If I =
comment out the Addr4 or the Addr2, Valgrind works, but if I have them =
both, it asserts. It may sometimes also work if I do minor changes to =
the code. It seems very irrational. I have a signal handler in my =
application, but I have commented it out without success. Im using a =
Debian system and Valgrind ver 20030725.
Any suggestions?
Regards
Stefan Nilsson, Sweden |