| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
currently disabled because fails
llvm-svn: 224509
|
|
|
|
|
|
|
|
|
| |
The Clang improevments were reverted due to failures created in an asan
bootstrap.
This reverts commit r224387.
llvm-svn: 224446
|
|
|
|
| |
llvm-svn: 224422
|
|
|
|
| |
llvm-svn: 224387
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D6504
llvm-svn: 224030
|
|
|
|
|
|
|
|
|
| |
this test is flaky because of ASLR
app memory is 7e8000000000-800000000000,
there may or may not be a 1TB hole depending on
where ASLR will choose to map libraries
llvm-svn: 223469
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D6478
llvm-svn: 223122
|
|
|
|
| |
llvm-svn: 222699
|
|
|
|
|
|
| |
test_output.sh produces source.cc.exe binaries
llvm-svn: 222345
|
|
|
|
| |
llvm-svn: 222344
|
|
|
|
|
|
| |
driver should add it as necessary
llvm-svn: 222343
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit changes the place where TSan runtime turns full path
to binary or shared library into its basename
(/usr/foo/mybinary -> mybinary). Instead of doing it as early as possible
(when we obtained the full path from the symbolizer), we now do it as
late as possible (right before printing the error report).
This seems like a right thing to do - stripping to basename is a detail
of report formatting implementation, and should belong there. Also, we
might need the full path at some point - for example, to match the
suppressions.
llvm-svn: 221225
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5995
llvm-svn: 220676
|
|
|
|
|
|
|
|
|
| |
Allow user memory in the first TB of address space.
This also enabled non-pie binaries and freebsd.
Fixes issue:
https://code.google.com/p/thread-sanitizer/issues/detail?id=5
llvm-svn: 220571
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5855
llvm-svn: 220552
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5841
llvm-svn: 220550
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5730
llvm-svn: 219791
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5729
llvm-svn: 219790
|
|
|
|
|
|
|
| |
Write interceptor calls malloc, which causes a false
unsafe-call-in-signal-handler report. See the test.
llvm-svn: 219784
|
|
|
|
|
|
|
|
|
|
| |
The current handling (manual execution of atexit callbacks)
is overly complex and leads to constant problems due to mutual ordering of callbacks.
Instead simply wrap callbacks into our wrapper to establish
the necessary synchronization.
Fixes issue https://code.google.com/p/thread-sanitizer/issues/detail?id=80
llvm-svn: 219675
|
|
|
|
|
|
|
| |
Previously we said that it's a data race, which is confusing
if it happens in the same thread.
llvm-svn: 219600
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5666
llvm-svn: 219482
|
|
|
|
|
|
| |
Related revision: http://reviews.llvm.org/D5670
llvm-svn: 219481
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5670
llvm-svn: 219478
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5669
llvm-svn: 219399
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5668
llvm-svn: 219398
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5665
llvm-svn: 219397
|
|
|
|
|
|
|
|
|
| |
In debug mode tsan checks that user accesses
access user memory. NULL is not user memory.
So the test fails. Allocate real inaccessible
memory for the test.
llvm-svn: 218069
|
|
|
|
| |
llvm-svn: 218067
|
|
|
|
| |
llvm-svn: 217992
|
|
|
|
|
|
|
|
|
|
| |
I don't remember that crash on mmap in internal allocator
ever yielded anything useful, only crashes in rare wierd untested situations.
One of the reasons for crash was to catch if tsan starts allocating
clocks using mmap. Tsan does not allocate clocks using internal_alloc anymore.
Solve it once and for all by allowing mmaps.
llvm-svn: 217929
|
|
|
|
|
|
| |
Fixes https://code.google.com/p/thread-sanitizer/issues/detail?id=75
llvm-svn: 217908
|
|
|
|
|
|
|
| |
We are interested in verifying that -gline-tables-only provides enough
debug information for verbose error reports and symbolized stack traces.
llvm-svn: 217284
|
|
|
|
|
|
|
| |
The second part of the fix of
https://code.google.com/p/thread-sanitizer/issues/detail?id=71
llvm-svn: 217031
|
|
|
|
|
|
| |
Fixes issue https://code.google.com/p/thread-sanitizer/issues/detail?id=74
llvm-svn: 216906
|
|
|
|
|
|
|
| |
Fixes issue
https://code.google.com/p/thread-sanitizer/issues/detail?id=71
llvm-svn: 216903
|
|
|
|
|
|
|
| |
Users expect synchronization between sigaction and arrival
of the signal. See the test for details.
llvm-svn: 216878
|
|
|
|
| |
llvm-svn: 215939
|
|
|
|
|
|
|
|
|
|
| |
Vector clocks is the most actively allocated object in tsan runtime.
Current internal allocator is not scalable enough to handle allocation
of clocks in scalable way (too small caches). This changes transforms
clocks to 2-level array with 512-byte blocks. Since all blocks are of
the same size, it's possible to cache them more efficiently in per-thread caches.
llvm-svn: 214912
|
|
|
|
|
|
| |
allow to specify access stride
llvm-svn: 214029
|
|
|
|
| |
llvm-svn: 212952
|
|
|
|
| |
llvm-svn: 212951
|
|
|
|
| |
llvm-svn: 212944
|
|
|
|
|
|
|
|
| |
This is a minor fix to two tsan tests that were expecting the wrong
column information. Now that clang emits column information by default
in its debugging output, the tests had started failing.
llvm-svn: 212779
|
|
|
|
| |
llvm-svn: 212749
|
|
|
|
|
|
| |
JVM actually moves memory between overlapping ranges.
llvm-svn: 212560
|
|
|
|
|
|
|
|
| |
The tsan's deadlock detector has been used in Chromium for a while;
it found a few real bugs and reported no false positives.
So, it's time to give it a bit more exposure.
llvm-svn: 212533
|
|
|
|
| |
llvm-svn: 212474
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Introduce new public header <sanitizer/allocator_interface.h> and a set
of functions __sanitizer_get_ownership(), __sanitizer_malloc_hook() etc.
that will eventually replace their tool-specific equivalents
(__asan_get_ownership(), __msan_get_ownership() etc.). Tool-specific
functions are now deprecated and implemented as stubs redirecting
to __sanitizer_ versions (which are implemented differently in each tool).
Replace all uses of __xsan_ versions with __sanitizer_ versions in unit
and lit tests.
llvm-svn: 212469
|
|
|
|
| |
llvm-svn: 211966
|