| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 201543
|
|
|
|
| |
llvm-svn: 201505
|
|
|
|
| |
llvm-svn: 201414
|
|
|
|
|
|
| |
works yet except for a single tiny test). Also rename tsan's DeadlockDetector to InternalDeadlockDetector
llvm-svn: 201407
|
|
|
|
|
|
|
|
|
|
| |
This is covered by existing ASan test.
This does not change anything for TSan by default (but provides a flag to
change the threshold size).
Based on a patch by florent.bruneau here:
https://code.google.com/p/address-sanitizer/issues/detail?id=256
llvm-svn: 201400
|
|
|
|
| |
llvm-svn: 201399
|
|
|
|
| |
llvm-svn: 201219
|
|
|
|
|
|
| |
llvm-symbolizer is unavailable. Allow this mode in TSan.
llvm-svn: 201218
|
|
|
|
| |
llvm-svn: 201213
|
|
|
|
|
|
|
|
|
|
| |
Because of the way Bionic sets up signal stack frames, libc unwinder is unable
to step through it, resulting in broken SEGV stack traces.
Luckily, libcorkscrew.so on Android implements an unwinder that can start with
a signal context, thus sidestepping the issue.
llvm-svn: 201151
|
|
|
|
| |
llvm-svn: 201069
|
|
|
|
| |
llvm-svn: 201015
|
|
|
|
|
|
|
| |
as required per core issue 1552 and warned about with
-Wimplicit-exception-spec-mismatch.
llvm-svn: 201014
|
|
|
|
|
|
|
| |
remove TSAN_OPTIONS from the test, so that it runs in the presubmit script
add a CHECK, so that it can run with FileCheck as well
llvm-svn: 200972
|
|
|
|
|
|
|
| |
when global and thread state are initialized,
this allows to do more things in the callback.
llvm-svn: 200966
|
|
|
|
|
|
| |
https://code.google.com/p/thread-sanitizer/issues/detail?id=47
llvm-svn: 200923
|
|
|
|
|
|
|
|
| |
on file stream locks.
This should fix https://code.google.com/p/thread-sanitizer/issues/detail?id=47.
llvm-svn: 200922
|
|
|
|
|
|
| |
we don't use assembly files
llvm-svn: 200916
|
|
|
|
| |
llvm-svn: 200915
|
|
|
|
| |
llvm-svn: 200838
|
|
|
|
| |
llvm-svn: 200833
|
|
|
|
| |
llvm-svn: 200832
|
|
|
|
| |
llvm-svn: 200780
|
|
|
|
| |
llvm-svn: 200779
|
|
|
|
|
|
| |
in preparation for https://codereview.appspot.com/55100044
llvm-svn: 200766
|
|
|
|
| |
llvm-svn: 200755
|
|
|
|
|
|
| |
in preparation for https://codereview.appspot.com/55100044
llvm-svn: 200750
|
|
|
|
|
|
| |
so that it's possible to override them from a dynamic library.
llvm-svn: 200747
|
|
|
|
|
|
|
|
|
|
|
|
| |
We do not detect errno spoiling for SIGTERM,
because some SIGTERM handlers do spoil errno but reraise SIGTERM,
tsan reports false positive in such case.
It's difficult to properly detect this situation (reraise),
because in async signal processing case (when handler is called directly
from rtl_generic_sighandler) we have not yet received the reraised
signal; and it looks too fragile to intercept all ways to reraise a signal.
llvm-svn: 200742
|
|
|
|
|
|
|
|
|
|
|
| |
__sanitizer_kernel_* ones.
Also rename internal_sigaction() into internal_sigaction_norestorer(), as this function doesn't fully
implement the sigaction() functionality on Linux.
This change is a part of refactoring intended to have common signal handling behavior in all tools.
llvm-svn: 200535
|
|
|
|
|
|
| |
They seems to be unused, but cause maintenance pain.
llvm-svn: 200308
|
|
|
|
|
|
|
| |
allow SIGABRT to spoil errno, because some real programs
reset SIGABRT handler in the handler, re-raise SIGABRT and return from the handler
llvm-svn: 200304
|
|
|
|
|
|
| |
otherwise races are suppressed due to "same stack"
llvm-svn: 200015
|
|
|
|
| |
llvm-svn: 200012
|
|
|
|
|
|
|
| |
We left ignore_interceptors>0 when calling signal handlers
from blocking interceptors, this leads to missing synchronization in such signal handler.
llvm-svn: 200003
|
|
|
|
| |
llvm-svn: 200002
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently correct programs can deadlock after fork, because atomic operations and async-signal-safe calls are not async-signal-safe under tsan.
With this change:
- if a single-threaded program forks, the child continues running with verification enabled (the tsan background thread is recreated as well)
- if a multi-threaded program forks, then the child runs with verification disabled (memory accesses, atomic operations and interceptors are disabled); it's expected that it will exec soon anyway
- if the child tries to create more threads after multi-threaded fork, the program aborts with error message
- die_after_fork flag is added that allows to continue running, but all bets are off
http://llvm-reviews.chandlerc.com/D2614
llvm-svn: 199993
|
|
|
|
|
|
|
|
|
|
| |
Intercept and sanitize arguments passed to printf functions in ASan and TSan
(don't do this in MSan for now). The checks are controlled by runtime flag
(off by default for now).
Patch http://llvm-reviews.chandlerc.com/D2480 by Yuri Gribov!
llvm-svn: 199729
|
|
|
|
| |
llvm-svn: 199216
|
|
|
|
| |
llvm-svn: 199200
|
|
|
|
|
|
| |
MemoryMappingLayout
llvm-svn: 198014
|
|
|
|
|
|
|
|
| |
and Mac.
Make a unit test added in r198004 more robust.
llvm-svn: 198012
|
|
|
|
| |
llvm-svn: 198005
|
|
|
|
|
|
|
|
| |
Symbolizer::IsExternalAvailable with Symbolizer::CanReturnFileLineInfo.
Remove now redundant checks in symbolizer initialization in TSan and MSan.
llvm-svn: 198000
|
|
|
|
|
|
| |
pthread uses internal cache, we do not see synchronization in it
llvm-svn: 197982
|
|
|
|
|
|
|
|
| |
This is intended to address the following problem.
Episodically we see CHECK-failures when recursive interceptors call back into user code. Effectively we are not "in_rtl" at this point, but it's very complicated and fragile to properly maintain in_rtl property. Instead get rid of it. It was used mostly for sanity CHECKs, which basically never uncover real problems.
Instead introduce ignore_interceptors flag, which is used in very few narrow places to disable recursive interceptors (e.g. during runtime initialization).
llvm-svn: 197979
|
|
|
|
| |
llvm-svn: 197965
|
|
|
|
| |
llvm-svn: 197569
|
|
|
|
|
|
|
|
|
| |
If 'symbolize' flag is not set, we still want to transform virtual address
to module+offset pair in the call to Symbolizer::SymbolizeCode().
See https://code.google.com/p/address-sanitizer/issues/detail?id=251 for
more details.
llvm-svn: 197491
|
|
|
|
| |
llvm-svn: 197015
|