Bart Van Assche
d3dd418801
Suppressed reports about data races during thread creation.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7843
2008-04-04 19:10:21 +00:00
Bart Van Assche
5290cf26f3
Added DRD_IGNORE_VAR() and DRD_TRACE_VAR() macro's.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7816
2008-03-30 08:40:49 +00:00
Bart Van Assche
44d59037f3
Removed --trace-mem which traced all memory accesses. Added support for multiple --trace-address options. A range size can now be specified to the VG_USERREQ__DRD_START_TRACE_ADDR client request. Added VG_USERREQ__DRD_STOP_TRACE_ADDR client request.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7814
2008-03-29 14:42:59 +00:00
Bart Van Assche
ce3b61b485
Changed meaning of the second argument of the start/stop suppression client requests from "end address" to "size in bytes".
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7806
2008-03-29 13:18:02 +00:00
Bart Van Assche
f3db559a9d
Make sure no error message is printed when pthread_mutex_trylock() is called on a non-recursive mutex from the thread that holds a lock on the mutex.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7769
2008-03-24 08:33:47 +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
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
8eb391f87d
Added new command-line option --trace-rwlock. Added regression test exp-drd/tests/rwlock_race. Updated to do list. Fixed bug in vc_min(), the function that computes the elementwise minimum of two vector clocks. Fixed bug in thread_update_danger_set(). Fixed recently introduced bug in mutex code with regard to vector clock combining.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7549
2008-03-03 20:31:58 +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
928bb0b897
Converted double mutex error messages into single error messages.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7524
2008-03-01 15:27:41 +00:00
Bart Van Assche
f9bbc5bf9a
Added command-line option --trace-clientobj. Renamed drd_clientobj* functions into clientobj*. Moved some code from drd_main.c into the drd_mutex.c/drd_cond.c/drd_semaphore.c.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7522
2008-03-01 13:44:24 +00:00
Bart Van Assche
1a03c31785
Eliminated per-thread start/stop recording mechanism, which should make DRD a little bit faster. malloc()/free() is now intercepted on all platforms instead of just on i386.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7519
2008-03-01 10:49:37 +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
ec91ad81ff
Eliminated upper bounds on the number of condition variables, semaphores and barriers. Added command-line option --trace-semaphore.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7508
2008-02-29 17:27:03 +00:00
Bart Van Assche
beb0f80401
Added support for recognizing invalid mutexes.
...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7497
2008-02-28 08:30:43 +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
Julian Seward
994193f9bb
Regtest/stability changes for drd (Bart Van Assche)
...
- Fix helgrind/tests/tc18_semabuse.c on glibc 2.7 (RedHat 8).
- Fixed a glibc 2.7 specific assertion failure in exp-drd, namely one
that was triggered when sem_post()'s return value is not zero.
- exp-drd/test/matinv.c compiles now also on RedHat 7.3.
Note: more work will be required to get exp-drd working correctly on
RedHat 7.3.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7354
2008-01-18 07:42:01 +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
ec903846a6
Remove pthread_object_size.h and associated hardwired constants.
...
(Bart Van Assche)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7252
2007-11-30 08:30:29 +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