summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/tsan/rtl
Commit message (Collapse)AuthorAgeFilesLines
...
* tsan: ignore malloc/free/strdup when called from libjvmDmitry Vyukov2013-09-213-7/+27
| | | | llvm-svn: 191153
* tsan: ignore all interceptors coming directly from JVMDmitry Vyukov2013-09-213-2/+35
| | | | llvm-svn: 191152
* tsan: improve diagnostics for incorrect usages of mutexesDmitry Vyukov2013-09-211-7/+10
| | | | llvm-svn: 191151
* tsan: intercept fork syscallDmitry Vyukov2013-09-211-18/+44
| | | | llvm-svn: 191144
* tsan: intercept close syscallDmitry Vyukov2013-09-211-0/+15
| | | | llvm-svn: 191129
* tsan: handle memory read/write in syscallsDmitry Vyukov2013-09-201-3/+13
| | | | llvm-svn: 191074
* tsan: allow to ignore memory accesses in malloc and freeDmitry Vyukov2013-09-201-4/+10
| | | | llvm-svn: 191072
* tsan: do not crash when user intercepts fopen()Dmitry Vyukov2013-09-201-0/+4
| | | | llvm-svn: 191066
* tsan: fix linking of tsan runtime into dynamic librariesDmitry Vyukov2013-09-193-45/+36
| | | | | | | versioned symbols can not be linked into dynamic library w/o linker script also simplifies code as side effect llvm-svn: 191056
* [TSan] Fix -Wempty-body warningAlexey Samsonov2013-09-191-4/+8
| | | | llvm-svn: 190993
* tsan: prevent the following false positive due to __cxa_atexitDmitry Vyukov2013-09-191-2/+8
| | | | | | | | | | | | | WARNING: ThreadSanitizer: data race (pid=29103) Write of size 8 at 0x7d64003bbf00 by main thread: #0 free tsan_interceptors.cc:477 #1 __run_exit_handlers <null>:0 (libc.so.6+0x000000050cb7) Previous write of size 8 at 0x7d64003bbf00 by thread T78 (mutexes: write M9896): #0 calloc tsan_interceptors.cc:449 #1 ... llvm-svn: 190989
* tsan: consistently use thr instead of cur_thread() in annotations implementationDmitry Vyukov2013-09-191-6/+6
| | | | llvm-svn: 190988
* tsan: refactor internal IgnoreCtl interfaceDmitry Vyukov2013-09-194-15/+19
| | | | llvm-svn: 190987
* [tsan] No-op implementation of AnnotateMemoryIsInitialized.Evgeniy Stepanov2013-09-181-0/+3
| | | | llvm-svn: 190933
* [Sanitizer] Refactor symbolization interface: use class instead of several ↵Alexey Samsonov2013-09-102-8/+8
| | | | | | functions. Move some code around to get rid of extra source files llvm-svn: 190410
* Delete unused variables.Eli Friedman2013-09-101-1/+0
| | | | llvm-svn: 190383
* [tsan] make calloc crash instead of returning 0 on overflow (controlled by ↵Kostya Serebryany2013-09-062-2/+3
| | | | | | the allocator_may_return_null flag) llvm-svn: 190135
* [tsan] add colors to tsan outputKostya Serebryany2013-09-051-2/+43
| | | | llvm-svn: 190045
* tsan: catch races on condition variablesDmitry Vyukov2013-09-031-0/+6
| | | | llvm-svn: 189816
* [TSan] fixup for r189791: don't put ; on the newlineAlexey Samsonov2013-09-031-3/+1
| | | | llvm-svn: 189792
* tsan: add suppressions for true/false positives in standard librariesDmitry Vyukov2013-09-031-0/+14
| | | | llvm-svn: 189791
* [TSan] Move the /proc/self/maps parsing logic to sanitizer_common Alexander Potapenko2013-09-031-57/+20
| | | | | | Provide a generic way for the tools to generate memory profiles from contents of /proc/self/maps llvm-svn: 189789
* tsan: properly intercept pthread_cond functionsDmitry Vyukov2013-09-023-40/+46
| | | | llvm-svn: 189767
* [TSan] Move build rules a bit to ensure correct dependencies of check-tsan ↵Alexey Samsonov2013-08-291-52/+0
| | | | | | command llvm-svn: 189579
* Properly generate lists of exported symbols for sanitizer runtimesAlexey Samsonov2013-08-273-8/+17
| | | | | | | | | This change adds a Python script that is invoked for the just-built sanitizer runtime to generate the list of exported symbols passed to the linker. By default, it contains interceptors and sanitizer interface functions, but can be extended with tool-specific lists. llvm-svn: 189356
* tsan: better report formatting for GoDmitry Vyukov2013-08-161-8/+14
| | | | | | | Say that gorotuine 1 is main goroutine. Remove excessive new line. llvm-svn: 188542
* tsan: intercept getaddrinfoDmitry Vyukov2013-08-131-0/+15
| | | | | | | This is necessary to prevent false positives, see: https://code.google.com/p/thread-sanitizer/issues/detail?id=25 llvm-svn: 188291
* tsan/msan: add halt_on_error flagDmitry Vyukov2013-08-133-1/+7
| | | | | | If halt_on_error==true, program terminates after reporting first error. llvm-svn: 188279
* [*San/RTL] Fix minor breakageTimur Iskhodzhanov2013-08-131-8/+10
| | | | | Grumbling: this hasn't been caught by running 'make check-{a,l,t}san check-sanitizer' llvm-svn: 188262
* Define SANITIZER_INTERFACE_ATTRIBUTE on Windows and fix all the places where ↵Timur Iskhodzhanov2013-08-134-58/+64
| | | | | | SANITIZER_INTERFACE_ATTRIBUTE or SANITIZER_ATTRIBUTE_WEAK are used llvm-svn: 188261
* [sanitizer] Intercept poll/ppoll.Evgeniy Stepanov2013-08-123-7/+3
| | | | llvm-svn: 188177
* [sanitizer] Intercept getgroups.Evgeniy Stepanov2013-08-122-0/+2
| | | | llvm-svn: 188167
* [sanitizer] Intercept scandir/scandir64.Evgeniy Stepanov2013-08-082-0/+4
| | | | llvm-svn: 187982
* [sanitizer] Intercept strerror and strerror_r.Evgeniy Stepanov2013-08-082-0/+4
| | | | llvm-svn: 187978
* [TSan] Let the users suppress use-after-free errors using the "race:" ↵Alexander Potapenko2013-08-071-1/+1
| | | | | | | | | | | | | | | suppressions. If there's a race between a memory access and a free() call in the client program, it can be reported as a use-after-free (if the access occurs after the free()) or an ordinary race (if free() occurs after the access). We've decided to use a single "race:" prefix for both cases instead of introducing a "use-after-free:" one, because in many cases this allows us to keep a single suppression for both the use-after-free and free-after-use. This may be misleading if the use-after-free occurs in a non-racy way (e.g. in a single-threaded program). But normally such bugs shall not be suppressed. llvm-svn: 187885
* [sanitizer] Intercept sched_getaffinity.Evgeniy Stepanov2013-08-072-0/+2
| | | | | | Re-applying with a more reliable test case. llvm-svn: 187876
* Revert "[sanitizer] Intercept sched_getaffinity."David Blaikie2013-08-072-2/+0
| | | | | | | | | | | | This reverts commit r187788. The test case is unreliable (as the test may be run in a situation in which it has no affinity with cpu0). This can be recommitted with a more reliable test - possibly using CPU_COUNT != 0 instead (I wasn't entirely sure that a process was guaranteed to have at least one affinity, though it seems reasonable, or I'd have made the change myself). llvm-svn: 187841
* [sanitizer] Intercept sched_getaffinity.Evgeniy Stepanov2013-08-062-0/+2
| | | | llvm-svn: 187788
* [msan] Intercept confstr.Evgeniy Stepanov2013-07-302-0/+2
| | | | llvm-svn: 187412
* tsan: treat SIGSYS as synchronous signalDmitry Vyukov2013-07-181-1/+2
| | | | | | | | It is required for chromium sandboxing code. From the description it seems to be indeed synchronous -- called back on syscall with incorrect arguments, but seems to be unused in practice. So this should be fine. llvm-svn: 186579
* tsan: disable one more interceptor that causes recursionDmitry Vyukov2013-07-171-0/+1
| | | | llvm-svn: 186497
* [Sanitizer] move strcpy and strncpy to common interceptorsAlexey Samsonov2013-07-161-26/+0
| | | | llvm-svn: 186408
* tsan: support sigsuspend() callDmitry Vyukov2013-07-163-0/+8
| | | | | | Intercepting it makes it process pending signal before return. llvm-svn: 186400
* [sanitizer] Support GLOB_ALTDIRFUNC in glob interceptor.Evgeniy Stepanov2013-07-091-3/+6
| | | | llvm-svn: 185932
* [sanitizer] Intercept realpath and canonicalize_file_name.Evgeniy Stepanov2013-07-092-0/+4
| | | | | | Handle realpath(path, NULL) form. llvm-svn: 185921
* [sanitizer] Intercept tcgetattr.Evgeniy Stepanov2013-07-042-0/+2
| | | | llvm-svn: 185626
* [sanitizer] More interceptors.Evgeniy Stepanov2013-07-042-0/+16
| | | | | | | | | bcopy strtoimax, strtoumax mbstowcs, mbsrtowcs, mbsnrtowcs wcstombs, wcsrtombs, wcsnrtombs llvm-svn: 185624
* [sanitizer] Intercept mbtowc, mbrtowc, get_current_dir_name.Evgeniy Stepanov2013-07-022-0/+4
| | | | | | Move getcwd to common interceptors. llvm-svn: 185424
* [sanitizer] Intercept setlocale.Evgeniy Stepanov2013-07-022-0/+2
| | | | llvm-svn: 185416
* [sanitizer] Intercept getnameinfo.Evgeniy Stepanov2013-07-012-0/+2
| | | | llvm-svn: 185338
OpenPOWER on IntegriCloud