llvm-capstone/compiler-rt/test/tsan
Dan Liew 861b69faee [Darwin] Fix symbolization for recent simulator runtimes.
Summary:
Due to sandbox restrictions in the recent versions of the simulator runtime the
atos program is no longer able to access the task port of a parent process
without additional help.

This patch fixes this by registering a task port for the parent process
before spawning atos and also tells atos to look for this by setting
a special environment variable.

This patch is based on an Apple internal fix (rdar://problem/43693565) that
unfortunately contained a bug (rdar://problem/58789439) because it used
setenv() to set the special environment variable. This is not safe because in
certain circumstances this can trigger a call to realloc() which can fail
during symbolization leading to deadlock. A test case is included that captures
this problem.

The approach used to set the necessary environment variable is as
follows:

1. Calling `putenv()` early during process init (but late enough that
malloc/realloc works) to set a dummy value for the environment variable.

2. Just before `atos` is spawned the storage for the environment
variable is modified to contain the correct PID.

A flaw with this approach is that if the application messes with the
atos environment variable (i.e. unsets it or changes it) between the
time its set and the time we need it then symbolization will fail. We
will ignore this issue for now but a `DCHECK()` is included in the patch
that documents this assumption but doesn't check it at runtime to avoid
calling `getenv()`.

The issue reported in rdar://problem/58789439 manifested as a deadlock
during symbolization in the following situation:

1. Before TSan detects an issue something outside of the runtime calls
setenv() that sets a new environment variable that wasn't previously
set. This triggers a call to malloc() to allocate a new environment
array. This uses TSan's normal user-facing allocator. LibC stores this
pointer for future use later.

2. TSan detects an issue and tries to launch the symbolizer. When we are in the
symbolizer we switch to a different (internal allocator) and then we call
setenv() to set a new environment variable. When this happen setenv() sees
that it needs to make the environment array larger and calls realloc() on the
existing enviroment array because it remembers that it previously allocated
memory for it. Calling realloc() fails here because it is being called on a
pointer its never seen before.

The included test case closely reproduces the originally reported
problem but it doesn't replicate the `((kBlockMagic)) ==
((((u64*)addr)[0])` assertion failure exactly. This is due to the way
TSan's normal allocator allocates the environment array the first time
it is allocated. In the test program addr[0] accesses an inaccessible
page and raises SIGBUS. If TSan's SIGBUS signal handler is active, the
signal is caught and symbolication is attempted again which results in
deadlock.

In the originally reported problem the pointer is successfully derefenced but
then the assert fails due to the provided pointer not coming from the active
allocator. When the assert fails TSan tries to symbolicate the stacktrace while
already being in the middle of symbolication which results in deadlock.

rdar://problem/58789439

Reviewers: kubamracek, yln

Subscribers: jfb, #sanitizers, llvm-commits

Tags: #sanitizers

Differential Revision: https://reviews.llvm.org/D78179
2020-04-17 15:08:14 -07:00
..
Darwin [Darwin] Fix symbolization for recent simulator runtimes. 2020-04-17 15:08:14 -07:00
libcxx compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
libdispatch [TSan] Fix test failing on Linux 2019-08-13 00:37:48 +00:00
Linux [NFC, tsan] Update tsan tests expectation 2020-04-16 17:19:52 -07:00
Unit [compiler-rt] Rename lit.*.cfg.* -> lit.*.cfg.py.* 2019-06-27 20:56:04 +00:00
aligned_vs_unaligned_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
annotate_happens_before.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
atexit2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
atexit3.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
atexit.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
atomic_free2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
atomic_free3.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
atomic_free.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
atomic_hle.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
atomic_norace.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
atomic_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
atomic_stack.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
atomic_store.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
barrier.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
bench_acquire_only.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
bench_acquire_release.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
bench_local_mutex.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
bench_mutex.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
bench_release_only.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
bench_rwmutex.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
bench_shadow_flush.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
bench_single_writer.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
bench_ten_mutexes.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
bench.h
benign_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
blacklist2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
blacklist.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
CMakeLists.txt [compiler-rt] Provide a lit config variable that defines the minimum deployment OS version flag appropriate for the configured OS. 2020-02-14 13:53:54 -08:00
cond_cancel.c compiler-rt: Rename .cc file in lib/tsan/rtl to .cpp 2019-08-01 14:22:42 +00:00
cond_destruction.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
cond_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
cond_version.c
cond.c
custom_mutex0.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
custom_mutex1.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
custom_mutex2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
custom_mutex3.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
custom_mutex4.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
custom_mutex5.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
custom_mutex.h [tsan] Add Mutex annotation flag for constant-initialized __tsan_mutex_linker_init behavior 2017-10-20 12:08:53 +00:00
cxa_guard_acquire.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
deadlock_detector_stress_test.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
debug_alloc_stack.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
debug_locate.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
debugging.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
deep_stack1.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
default_options.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
deflake.bash Title: [TSAN] Parameterize the hard-coded threshold of deflake in tsan test 2020-02-12 15:51:57 +00:00
dl_iterate_phdr.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
dlclose.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
dtls.c Add a %darwin_min_target_with_tls_support lit substitution. 2020-02-19 15:41:36 -08:00
exceptions.cpp Remove NOLINTs from compiler-rt 2019-09-11 23:19:48 +00:00
fd_close_norace2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fd_close_norace.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fd_dup_norace2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fd_dup_norace.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fd_dup_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fd_location.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fd_pipe_norace.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fd_pipe_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fd_socket_connect_norace.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fd_socket_norace.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fd_socketpair_norace.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fd_stdout_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fd_tid_recycled.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fiber_asm.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fiber_cleanup.cpp [TSAN] Fix infinite loop on targets where char is unsigned 2020-04-11 07:12:47 -05:00
fiber_from_thread.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fiber_longjmp.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fiber_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fiber_simple.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fiber_two_threads.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fork_atexit.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fork_deadlock.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fork_multithreaded3.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
fork_multithreaded.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
free_race2.c
free_race.c
free_race.c.supp
getline_nohang.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
global_race2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
global_race3.cpp Update compiler-rt cpplint.py 2019-09-11 21:33:06 +00:00
global_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
halt_on_error.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
heap_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
ignore_free.cpp [TSan] Add AnnotateIgnoreReadsBegin declaration to tsan/test.h 2019-09-09 20:07:03 +00:00
ignore_lib0.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
ignore_lib0.cpp.supp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
ignore_lib1.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
ignore_lib1.cpp.supp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
ignore_lib2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
ignore_lib2.cpp.supp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
ignore_lib3.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
ignore_lib3.cpp.supp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
ignore_lib4.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
ignore_lib5.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
ignore_lib5.cpp.supp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
ignore_lib6.cpp tsan: fix pthread_detach with called_from_lib suppressions 2020-02-26 12:59:49 +01:00
ignore_lib6.cpp.supp tsan: fix pthread_detach with called_from_lib suppressions 2020-02-26 12:59:49 +01:00
ignore_lib_lib.h
ignore_malloc.cpp [TSan] Add AnnotateIgnoreReadsBegin declaration to tsan/test.h 2019-09-09 20:07:03 +00:00
ignore_race.cpp [TSan] Add AnnotateIgnoreReadsBegin declaration to tsan/test.h 2019-09-09 20:07:03 +00:00
ignore_sync.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
ignored-interceptors-mmap.cpp Remove xfail NetBSD mark from ignored-interceptors-mmap.cpp 2019-09-10 23:42:16 +00:00
inlined_memcpy_race2.cpp [NFC, tsan] Update tsan tests expectation 2020-04-16 17:19:52 -07:00
inlined_memcpy_race.cpp [NFC, tsan] Update tsan tests expectation 2020-04-16 17:19:52 -07:00
interface_atomic_test.c
java_alloc.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_finalizer.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_find.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_heap_init.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_lock_move.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_lock_rec_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_lock_rec.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_lock.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_move_overlap_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_move_overlap.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_race_move.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_race_pc.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_rwlock.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_symbolization_legacy.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_symbolization.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java_volatile.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
java.h Remove NOLINTs from compiler-rt 2019-09-11 23:19:48 +00:00
large_malloc_meta.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
lit.cfg.py [TSan] Fix incorrect expansion of %deflake lit substitution. 2020-02-19 13:23:26 -08:00
lit.site.cfg.py.in [compiler-rt] Provide a lit config variable that defines the minimum deployment OS version flag appropriate for the configured OS. 2020-02-14 13:53:54 -08:00
load_shared_lib.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
longjmp2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
longjmp3.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
longjmp4.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
longjmp.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
lots_of_threads.c
malloc_overflow.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
malloc_stack.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
map32bit.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
memcmp_race.cpp [NFC, tsan] Update tsan tests expectation 2020-04-16 17:19:52 -07:00
memcpy_race.cpp [NFC, tsan] Update tsan tests expectation 2020-04-16 17:19:52 -07:00
mmap_large.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mmap_stress.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mop1.c
mop_with_offset2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mop_with_offset.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
must_deadlock.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutex_annotations.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutex_bad_read_lock.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutex_bad_read_unlock.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutex_bad_unlock.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutex_cycle2.c tsan: align default value of detect_deadlocks flag with actual behavior 2018-12-19 09:34:13 +00:00
mutex_cycle_long.c
mutex_destroy_locked2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutex_destroy_locked.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutex_double_lock.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutex_lock_destroyed.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutexset1.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutexset2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutexset3.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutexset4.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutexset5.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutexset6.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
mutexset7.cpp Add a %darwin_min_target_with_tls_support lit substitution. 2020-02-19 15:41:36 -08:00
mutexset8.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
pie_test.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
printf-1.c
pthread_atfork_deadlock2.c tsan: fix deadlock with pthread_atfork callbacks 2020-03-21 14:36:51 +01:00
pthread_atfork_deadlock.c
pthread_key.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
race_on_barrier2.c
race_on_barrier.c
race_on_fputs.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
race_on_heap.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
race_on_mutex2.c
race_on_mutex.c
race_on_puts.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
race_on_read.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
race_on_speculative_load.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
race_on_write.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
race_range_pc.cpp Rename tsan/race_range_pc.cc to test/tsan/race_range_pc.cpp. 2019-12-03 09:49:25 -08:00
race_stress.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
race_top_suppression1.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
race_top_suppression.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
race_with_finished_thread.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
real_deadlock_detector_stress_test.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
restore_stack.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
setuid2.c
setuid.c
signal_block.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
signal_cond.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
signal_errno.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
signal_longjmp.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
signal_malloc.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
signal_pause.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
signal_recursive.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
signal_reset.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
signal_sync2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
signal_sync.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
signal_thread.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
signal_write.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
sigsuspend.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
simple_race.c
simple_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
simple_stack2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
simple_stack.c
sleep_sync2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
sleep_sync.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
stack_race2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
stack_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
stack_sync_reuse.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
static_init1.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
static_init2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
static_init3.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
static_init4.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
static_init5.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
static_init6.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
strerror_r.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
sunrpc.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
suppress_same_address.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
suppress_same_stacks.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
suppressions_global.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
suppressions_global.cpp.supp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
suppressions_mutex.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
suppressions_mutex.cpp.supp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
suppressions_race2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
suppressions_race2.cpp.supp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
suppressions_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
suppressions_race.cpp.supp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
test.h [TSan] Add AnnotateIgnoreReadsBegin declaration to tsan/test.h 2019-09-09 20:07:03 +00:00
thread_detach2.c
thread_detach.c
thread_end_with_ignore2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
thread_end_with_ignore3.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
thread_end_with_ignore.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
thread_exit.c [tsan] Remove debug logging and disable test on ppc64be 2019-02-09 19:28:52 +00:00
thread_leak2.c
thread_leak3.c
thread_leak4.c
thread_leak5.c
thread_leak.c
thread_name2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
thread_name.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
tiny_race.c
tls_race2.cpp Add a %darwin_min_target_with_tls_support lit substitution. 2020-02-19 15:41:36 -08:00
tls_race.cpp Add a %darwin_min_target_with_tls_support lit substitution. 2020-02-19 15:41:36 -08:00
tsan-vs-gvn.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
unaligned_norace.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
unaligned_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
vfork.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
virtual_inheritance_compile_bug.cpp Remove NOLINTs from compiler-rt 2019-09-11 23:19:48 +00:00
vptr_benign_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
vptr_harmful_race2.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
vptr_harmful_race3.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
vptr_harmful_race4.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
vptr_harmful_race.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00
write_in_reader_lock.cpp compiler-rt: Rename .cc file in test/tsan to .cpp 2019-08-02 07:18:07 +00:00