Go to file
Kuba Brecka 11d8c1f8dd [tsan] Fix an assertion failure in FindThreadByUidLocked with recycled threads
When a race on file descriptors is detected, `FindThreadByUidLocked()` is called to retrieve ThreadContext with a specific unique_id. However, this ThreadContext might not exist in the thread registry anymore (it may have been recycled), in which case `FindThreadByUidLocked` will cause an assertion failure in `GetThreadLocked`. Adding a test case that reproduces this, producing:

    FATAL: ThreadSanitizer CHECK failed: sanitizer_common/sanitizer_thread_registry.h:92 "((tid)) < ((n_contexts_))" (0x34, 0x34)

This patch fixes this by replacing the loop with `FindThreadContextLocked`.

Differential Revision: http://reviews.llvm.org/D14984

llvm-svn: 254223
2015-11-28 09:16:34 +00:00
clang Fixed default label in fully covered switch warning that was introduced in r254203. 2015-11-27 19:49:24 +00:00
clang-tools-extra [clang-tidy] google-explicit-constructor: improve the warning message 2015-11-28 02:25:02 +00:00
compiler-rt [tsan] Fix an assertion failure in FindThreadByUidLocked with recycled threads 2015-11-28 09:16:34 +00:00
debuginfo-tests New round of fixes for "Always compile debuginfo-tests for the host triple" 2014-10-18 23:47:59 +00:00
libclc integer: remove explicit casts from _MIN definitions 2015-10-06 19:12:12 +00:00
libcxx Add static_assert to set/multiset/map/multimap/forward_list/deque that the allocator's value_type match the container's value_type. vector/unordered/list/string already do this. Add tests for all the containers to verify this. 2015-11-26 01:24:04 +00:00
libcxxabi c++abi: use __builtin_offsetof instead of offsetof 2015-11-18 05:33:38 +00:00
libunwind Make it possible to use libunwind without heap. 2015-11-09 06:57:29 +00:00
lld [ELF] Lookup INPUT argument in the current directory 2015-11-26 20:23:46 +00:00
lldb [LLGS] Don't forward I/O when process is stopped 2015-11-27 13:33:29 +00:00
llgo [llgo] Force exporting __morestack from llgoi 2015-11-27 04:46:46 +00:00
llvm Use range-based for loops. NFC 2015-11-28 08:23:04 +00:00
openmp Add newlines to debug TRACE messages in kmp_taskdeps.cpp 2015-11-16 22:53:38 +00:00
polly IR cleanup after CodeGeneration 2015-11-26 12:36:25 +00:00