Gitiles
Code Review
Sign In
gerrit-public.fairphone.software
/
platform
/
external
/
valgrind
/
3bbaf48a604b6dca892cdfbf33a951a75fa01fc3
/
drd
/
drd_pthread_intercepts.c
818f17e
Make drd/drd_pthread_intercepts.c compile again on Linux systems without usable <linux/futex.h> header
by bart
· 13 years ago
5cbd26e
drd: Avoid reporting false positive race reports inside pthread_join().
by bart
· 13 years ago
1f4f300
drd: Remove a too strict assert() statement
by bart
· 13 years ago
d1a5cd6
drd: Make drd_pthread_intercepts.c compile again on systems where
by bart
· 13 years ago
6d956dc
drd: Delay deletion of memory access information of joined threads in order not
by bart
· 13 years ago
651f56b
drd/Linux: eliminate busy waiting when starting a thread
by bart
· 13 years ago
0c09bf0
The pthread.h on Android has no definition for pthread_rwlock_t, which
by sewardj
· 13 years ago
575ce8e
Get rid of the remaining "set but not used" warnings reported by gcc 4.6 by
by bart
· 14 years ago
c7ffc94
Fix up most but not all warnings generated by gcc-4.6 about
by sewardj
· 14 years ago
922304f
Updated modeline and copyright statement in DRD source files.
by bart
· 14 years ago
b957ab8
DRD: Allocate thread arguments again on the stack.
by bart
· 14 years ago
5668d4e
DRD: Report an error if an invalid argument is passed to pthread_detach(). Do not assume that pthread_detach() returns an error code if its argument is invalid. Should fix #267968.
by bart
· 14 years ago
8244b86
DRD: Fixed a race condition triggered by invoking pthread_detach() with an argument not equal to pthread_self(). Potential fix for #267968.
by bart
· 14 years ago
e476e92
DRD: Removed an obsolete comment.
by bart
· 14 years ago
8239742
DRD: Source code cleanup.
by bart
· 14 years ago
377d23f
DRD, Darwin: avoid triggering misaligned stack errors. Fixes #267552.
by bart
· 14 years ago
b2260b8
Reverted r11536 because it didn't have the desired effect - changing the behavior of DRD on Darwin.
by bart
· 14 years ago
9fc7fac
DRD: don't inline pthread intercepts because in combination with the current fragile implementation of the CALL_FN_* macros inlining intercepts can easily trigger stack alignment errors on Darwin.
by bart
· 14 years ago
876cafd
E-mail address update.
by bart
· 14 years ago
33f76c1
DRD: avoid unaligned reads.
by bart
· 14 years ago
f27eba2
Replaced dynamic initialization of DRD_(pthread_cond_initializer) by static initialization.
by bart
· 14 years ago
850f199
Handle statically initialized condition variables properly.
by bart
· 14 years ago
9eecbbb
Update copyright dates to 2010.
by sewardj
· 15 years ago
31b983d
Removed trailing whitespace in C source and header files.
by bart
· 15 years ago
4f66a77
Builds again on Darwin.
by bart
· 15 years ago
791a0c6
Implemented a more systematic approach for intercepting POSIX threads
by bart
· 15 years ago
b48bde2
Report an error message instead of triggering an assertion failure when a non-existing thread ID is passed to pthread_join() or pthread_cancel().
by bart
· 15 years ago
554953f
Fixed typo.
by bart
· 15 years ago
93a0274
Suppress data race reports for the data race triggered by Darwin's pthread_once() implementation such that the pth_once test also passes on Darwin.
by bart
· 15 years ago
fc68130
Removed code that has been commented out recently.
by bart
· 15 years ago
dd75cdf
Replaced code for suppressing the stack memory in use at the time a
by bart
· 15 years ago
25f9f54
Added support for sem_open() and sem_close().
by bart
· 15 years ago
d2d744c
Make the regression tests pass again on Linux.
by bart
· 15 years ago
e8cbb40
More tweaking for Darwin.
by bart
· 15 years ago
6fe737b
Tweaks for Darwin.
by bart
· 15 years ago
adb7a20
Made sure that DRD does something meaningful when using another threading library than LinuxThreads or the NPTL.
by bart
· 15 years ago
f76d27a
Merge the DARWIN branch onto the trunk.
by njn
· 15 years ago
5f5ef2a
Factor out the name of the libpthread library. Also fix a minor stack trace
by njn
· 16 years ago
c39d109
Fixed #189763.
by bart
· 16 years ago
bedfd23
- Reindented code such that it uses three spaces for indentation instead
by bart
· 16 years ago
489de21
Made DRD_(mutex_type) ignore mutex attribute flags.
by bart
· 16 years ago
a0b7222
Added comment block that explains why the creator thread waits until the creator thread has copied the vector clock of the creator thread.
by bart
· 16 years ago
d2c5eae
Changes:
by bart
· 16 years ago
86562bd
- Updated copyright statements. - Improved consistency of source file headers.
by bart
· 16 years ago
a764b37
Restored the previous method for passing arguments from the creator thread to the created thread, since the new approach made some regression tests fail. It is not yet clear to me why.
by bart
· 16 years ago
227c659
- Performance improvement: eliminated busy waiting from thread creation.
by bart
· 16 years ago
292c1e2
Renamed vg_thread_wrapper() into DRD_(thread_wrapper)().
by bart
· 16 years ago
e8900ff
Replaced test for FILE::_lock by a more direct test.
by bart
· 16 years ago
88f3a89
Removed #define _IO_MTSAFE_IO again.
by bart
· 16 years ago
3a979cb
Removed inclusion of <bits/libc-lock.h>.
by bart
· 16 years ago
280990e
Suppress race reports triggered by glibc's _IO_flockfile(FILE*) on stdout and stderr.
by bart
· 16 years ago
2bc9c10
Added intercept for pthread_cancel().
by bart
· 16 years ago
3f4623e
Enabled support for nesting mutexes and condition variables in higher-level synchronization primitives. Changed mutex tracing output slightly.
by bart
· 16 years ago
f4f0581
Made spinlocks work again.
by bart
· 16 years ago
ccf17de
Renamed exp-drd directory into drd. Moved drd from the experimental tool class to the class of regular tools.
by bart
· 16 years ago
[Renamed from exp-drd/drd_pthread_intercepts.c]
8556957
Changed #if defined(platform) tests into #if defined(HAVE_...) tests.
by bart
· 17 years ago
0baacb3
Reverted last commit since it does not fix anything (unfortunately).
by bart
· 17 years ago
1fb1755
Postponed call of vg_set_main_thread_state() from /lib/ld-*.so:_start() to the call of main(), the program entry point.
by bart
· 17 years ago
7cf4e6b
by sewardj
· 17 years ago
44ceea2
Replaced -nostdlib by -nodefaultlibs such that constructors are executed at shared library load time. Replaced _init() function in drd_pthread_intercepts.c by a function with a constructor attribute in order to increase portability.
by bart
· 17 years ago
25d3003
Data races on *stdout / *stderr are now suppressed via these objects itselves instead of via suppression patterns.
by bart
· 17 years ago
5e389f1
Presence of pthread_mutex_t::__m_kind or pthread_mutex_t::__data.__kind is now detected by configure. DRD now halts if configure could not find either of these two data members.
by bart
· 17 years ago
bf3a60c
Suppressed reports about data races during thread creation.
by bart
· 17 years ago
6f07b25
Moved one-time initialization code from first intercepted pthread_create() call to _init() function.
by bart
· 17 years ago
1b7a830
Bug fix: DRD no longer complains that a mutex was not locked by the calling thread when unlocking a mutex after a call to pthread_cond_timedwait() that timed out.
by bart
· 17 years ago
f5bb46a
Changed meaning of the second argument of the start/stop suppression client requests from "end address" to "size in bytes".
by bart
· 17 years ago
2e3a3c1
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.
by bart
· 17 years ago
e9996b8
Because of a recent change the glibc 2.0 and glibc 2.x (x>=1) redirections are now identical. Removed the duplicate redirections.
by bart
· 17 years ago
3772a98
Made indentation in the DRD source code uniform: indentation size is now two spaces in all soure files.
by bart
· 17 years ago
368ec98
Reverted last commit.
by bart
· 17 years ago
df6cbe3
Resolved function redirection conflict.
by bart
· 17 years ago
0268dfa
Added support for OpenMP barriers -- if libgomp.so has been built with debug information. More in general, added support for nested synchronization constructs.
by bart
· 17 years ago
2cb588d
Renamed drd_intercepts.c into drd_pthread_intercepts.c.
by bart
· 17 years ago
[Renamed from exp-drd/drd_intercepts.c]
d218a58
Fixed compiler warning.
by bart
· 17 years ago
4501d5c
Replaced non-deterministic LinuxThreads test by a deterministic one (the time at which getpid() was called in the created thread did depend on how the Valgrind core scheduled threads).
by bart
· 17 years ago
5bd9f2d
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.
by bart
· 17 years ago
777f7fe
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.
by bart
· 17 years ago
0034464
Converted double mutex error messages into single error messages.
by bart
· 17 years ago
72b751c
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.
by bart
· 17 years ago
5e85d26
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.
by bart
· 17 years ago
0d06300
When started with linuxthreads, the DRD tool now stops as soon as the first thread is created.
by bart
· 17 years ago
3b1ee45
Added detection of more types of runtime errors. Cleaned up tracing output. Added test for tracing output (tc20_verifywrap2).
by bart
· 17 years ago
28230a3
Eliminated upper bounds on the number of condition variables, semaphores and barriers. Added command-line option --trace-semaphore.
by bart
· 17 years ago
635cb16
Added support for recognizing invalid mutexes.
by bart
· 17 years ago
c9463c4
Should compile again with linuxthreads header files.
by bart
· 17 years ago
5357fcb
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.
by bart
· 17 years ago
c0be925
Fix race condition in sem_post() wrapper (Bart Van Assche).
by sewardj
· 17 years ago
347eeba
by sewardj
· 17 years ago
e3b57aa
by sewardj
· 17 years ago
8564292
by sewardj
· 17 years ago
eced459
Rename drd_preloaded.c to drd_intercepts.c (Bart Van Assche)
by sewardj
· 17 years ago
[Renamed from exp-drd/drd_preloaded.c]
e0744f0
Only pass valid ThreadIDs to VG_(record_ExeContext). (Bart Van Assche)
by sewardj
· 17 years ago
721ad7b
Remove pthread_object_size.h and associated hardwired constants.
by sewardj
· 17 years ago
af44c82
Add DRD as an experimental tool. Bart Van Assche is the maintainer.
by sewardj
· 17 years ago