Commit Graph

28 Commits

Author SHA1 Message Date
Bart Van Assche
d6bb5c34d0 DRD now prints where a mutex appeared for the first time in addition to
the mutex address when an error message is printed for condition
variables.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8296
2008-06-28 13:40:41 +00:00
Bart Van Assche
806d5abe6d Some time ago reporting sending POSIX signals where the mutex associated
with the signal via pthread_cond_wait()/pthread_cond_timedwait() was
disabled. Reenabled this report, made it configurable, and added a
regression test for the new command line option.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8295
2008-06-28 13:01:30 +00:00
Bart Van Assche
148174c3ff Added support for detecting locks that have been held too long.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8079
2008-05-14 12:25:00 +00:00
Bart Van Assche
40676b49de Added tl_assert() statement on result of VG_(malloc)() calls.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7837
2008-04-01 18:38:29 +00:00
Bart Van Assche
05de9ea4b0 Slightly reduced stack space needed when reporting a data race.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7835
2008-04-01 18:19:50 +00:00
Bart Van Assche
ed3fefb42e Modified error message that is printed when a mutex operation is attempted on an object that is not a mutex.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7783
2008-03-24 19:31:33 +00:00
Bart Van Assche
aa045690f8 When the "not a mutex" error message is printed, the offending address is now printed too.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7773
2008-03-24 09:29:38 +00:00
Bart Van Assche
d1e56ca05d Reorganized error printing code slightly.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7758
2008-03-23 07:54:02 +00:00
Bart Van Assche
ad69317a43 Error type CondErr is now recognized when reading a suppression file.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7756
2008-03-22 17:35:56 +00:00
Bart Van Assche
5a595685b9 Added command-line option --show-confl-seg (show conflicting segments).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7733
2008-03-18 17:08:08 +00:00
Bart Van Assche
93024414ae Fixed mismatches between format string and arguments.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7728
2008-03-17 18:36:55 +00:00
Bart Van Assche
8a980611eb All error and trace messages now show both Valgrind's and DRD's thread ID.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7716
2008-03-16 17:57:01 +00:00
Bart Van Assche
eeaadf42bd Removed obsolete code.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7712
2008-03-16 17:27:25 +00:00
Bart Van Assche
1e97c6854d Removed support for thread names.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7704
2008-03-16 10:42:33 +00:00
Bart Van Assche
f43006ea78 Made indentation in the DRD source code uniform: indentation size is now two spaces in all soure files.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7684
2008-03-15 08:11:03 +00:00
Bart Van Assche
bd1e6d9da1 Added support for OpenMP barriers -- if libgomp.so has been built with debug information. More in general, added support for nested synchronization constructs.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7642
2008-03-11 20:10:21 +00:00
Bart Van Assche
07d4038812 Fixed typo.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7613
2008-03-09 13:39:58 +00:00
Bart Van Assche
282ceeaf17 More information is now printed if a data race is detected in dynamically allocated memory.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7606
2008-03-09 08:46:11 +00:00
Bart Van Assche
fb679210b0 Switched to VG_(get_data_description)() for descriptions of addresses in error reports.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7585
2008-03-07 18:52:38 +00:00
Julian Seward
14af4957fc Merge in the DATASYMS branch.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7540
2008-03-03 01:35:41 +00:00
Bart Van Assche
1c0e43670f Added support for POSIX reader-writer locks. Modified exp-drd/tests/filter-stderr such that i386 and AMD64 now generate the same output. Removed *.stderr.exp2 files. Added section that explains differences between LinuxThreads and NPTL to exp-drd/docs/README.txt. Made error message about LinuxThreads more clear. Made error messages more uniform.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7531
2008-03-02 17:43:18 +00:00
Bart Van Assche
2aee92911e Added detection of more types of runtime errors. Cleaned up tracing output. Added test for tracing output (tc20_verifywrap2).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7511
2008-02-29 19:28:15 +00:00
Bart Van Assche
0336cdffbb Modified drd client requests such that the mutex type can be passed from the intercepts to the tool. An error message is now printed in case a locked mutex is destroyed and in case a thread exits while it holds a lock on a mutex. Changed format of mutex error messages. Added recursive_mutex regression test. Fixed autogen warnings in exp-drd/tests/Makefile.am.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7489
2008-02-27 15:46:00 +00:00
Bart Van Assche
cd8ef39ca8 Cleaned up generation of "Not a mutex" error messages.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7483
2008-02-26 19:13:04 +00:00
Bart Van Assche
7942f5b386 The mutex address may now be left zero when triggering a MutexErr.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7460
2008-02-25 19:40:14 +00:00
Bart Van Assche
59dc2d89a1 Cleanup: removed old data race detection algorithm implementation.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7442
2008-02-24 18:25:43 +00:00
Julian Seward
22b3fe2a3e DRD updates (Bart Van Assche):
- Updated copyright statement: replaced 2006-2007 by 2006-2008.
- Added copyright statement in the files where it was missing
(drd_track.h and drd_clientreq.c)
- Eliminated dependencies on core header files -- there are no more
#include "pub_core....h" directives in the exp-drd source code.
- Added semaphore support.
- Added barrier support.
- Added pthread_mutex_timedlock() support.
- Stack depth of stack traces printed by exp-drd can now be set via
--num-callers=...
- Added command-line option --trace-barrier=[yes|no].
- Added regression test for pthread_barrier() (matinv, a program that
performs matrix inversion).
- Added regression test sem_as_mutex, which tests whether race
detection works correctly when a semaphore is used to ensure mutual
exclusion of critical sections.
- Some of helgrind's regression tests are now used to test both
helgrind and exp-drd: tc17_sembar and tc18_semabuse.
- Cleaned up bitmap implementation code now that the const keyword has
been added to the declarations of the OSet functions.
- Cleaned up exp-drd/Makefile.am
- Updated exp-drd/TODO.txt




git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7346
2008-01-14 11:54:56 +00:00
Julian Seward
dc1dbea937 Add DRD as an experimental tool. Bart Van Assche is the maintainer.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7211
2007-11-25 14:01:38 +00:00