History log of /external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
5d72fc796f21fb9714722e0006d72213fb300688 18-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: better memory profiler



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177286 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
b114ed83859d8d4964ac2284584733bcd2acf4f6 13-Mar-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Move GetTlsSize code from TSan to sanitizer_common.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@176938 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
45717c9d5e39a434749ae10509111f9df1b2cdf4 13-Mar-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] Change MemoryMappingLayout methods to also report memory protection flags (for future use in leak checker). Patch by Sergey Matveev.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@176931 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
ce44055cdde85554aa9d18f8a7166bf5df6f9bb3 19-Feb-2013 Kostya Serebryany <kcc@google.com> [tsan] use our own GetEnv instead of libc's getenv

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@175498 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
03f224835f46801a0e22cc2951d21b67304e0457 07-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: intercept libc __res_iclose
this is required to catch close of file descriptors created in getaddrinfo()


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174624 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
a54aec8ca2e372b1a841d605d53cab5e336aeb03 27-Dec-2012 Kostya Serebryany <kcc@google.com> [asan/tsan] when unmapping a chunk of user memory, apply madvise(MADV_DONTNEED) to the corresponding chunk of shadow memory. Also update sanitizer_allocator64_testlib.cc

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171144 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
421841f28b599a55442d1feafbca0bece5078729 24-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: remove static reference to glibc internal _dl_get_tls_static_info()
(this breaks RPM packages)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171033 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
4dc30820d34372c419fd44dda2bdb6383a480ce7 21-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix lint warnings


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170877 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
4de5864fa631dbba52670dea2503b8540390f176 21-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: disable checks for limited address space and unlimited stack for Go


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170876 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
6535c31c66569df262791f0b56852c496977c977 13-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: support MapThreadTrace() on all platforms


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170113 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
d698edc4f74a17048eef3342a9fa42b3ebba802a 28-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: dynamic history size
introduces history_size parameter that can be used to control trace size at startup


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168786 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
385542a2e83a4f37de4232d6c72097c1b7d6d44b 28-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: move traces from tls into dedicated storage at fixed address
helps to reduce tls size (it's weird to have multi-MB tls)
will help with dynamically adjustable trace size


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168783 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
79c9836f727cbaaf380ccb29e1ef62de83a2e810 08-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: use GORACE env for options for Go


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167575 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
a05fcc1e3e045097f2f1a20798cbe038bbb1d6a9 06-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: lazily allocate shadow for Go



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167464 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
b1fe3021eca0843e37878d224ee7f32e32f40d99 02-Nov-2012 Alexey Samsonov <samsonov@google.com> [TSan] finally remove TsanPrintf in favor of Printf from sanitizer_common

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167294 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
97dac9e9a15722f94724a9f61b29518698867ee8 27-Sep-2012 Evgeniy Stepanov <eugeni.stepanov@gmail.com> Quick fix data/bss detection in TSan.

The old way breaks when a module's bss is adjacent to the [heap] vm area.
Both ways are not very reliable, though.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164772 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
85a6dad26739fcd9742eae04b4a539e29889e937 19-Sep-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix Go build


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164198 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
3b339c923b4eefa6a58a349c1a7a1d279612215e 17-Sep-2012 Alexey Samsonov <samsonov@google.com> [TSan] If we detect an unlimited stack, try to re-exec with limited stack

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164021 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
2135d8a7f4ba30fe35ed02d5e6ffd59a95b26219 13-Sep-2012 Alexey Samsonov <samsonov@google.com> [TSan] fix a bunch of warnings reported by pedantic gcc

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163788 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
591616d323d73b7ea7cd8fea4eec46cedccda27e 11-Sep-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Get rid of dependency between sanitizer_common and asan/tsan runtimes: implement tool-specific Die and CheckFailed functions via callbacks

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163603 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
0c2feef1067818db0ede4531a2e71c9b5595d57a 07-Sep-2012 Dmitry Vyukov <dvyukov@google.com> tsan: ignore destruction of global mutexes (causes a lot of non-interesting reports)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163400 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
e1f5dac9296df08ff83ae5fca51ce4da995b55cf 27-Aug-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Rename ProcessMaps to MemoryMappingLayout and fix Windows build by providing stub implementation

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162671 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
2e87051d136db3150a3ca322d8862f92b0a684bb 15-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: switch to new allocator


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161953 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
3f24d6386cea638f5d4bc1694d1de02917988bcd 16-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix build


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160267 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
b78caa645f70eff2f037f1f8bb43ca9129dbd8d9 05-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: Go language support


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159754 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
84902c716abf9ba0dc6e7b1cd0522759f29b3179 18-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] kill some linux-specific code in favor of code in common runtime: reuse wrappers for mmap routines, ProcessMaps iterator, thread stack calculation

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158657 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
0969bcf2c936126b1f6e636b978aade8fc207437 18-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] move different wrappers from TSan to common sanitizer runtime

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158655 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
88207ab15125e2f1e9b3d541b735b2b8aba9b6d9 15-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Use DEFINE_REAL macro in TSan runtime to call libc implementations of functions. Move strchr to sanitizer_libc.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158517 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
e954101f6602ac181a2c3accfbbad0ae51b0bf7c 06-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer]: Introduce a common internal printf function. For now, also use tool-specific wrappers TsanPrintf (its output is controlled by TSan flags) and AsanPrintf (which copies its results to the ASan-private buffer). Supported formats: %[z]{d,u,x}, %s, %p. Re-write all format strings in TSan according to this format (this should have no effect on 64-bit platforms).

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158065 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
67a64dd8259fdbd867633b27f54d584f435f1ce6 06-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] run some renaming as a preparation for factoring out Printf implementation.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158058 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
230c3be6cdd094a187f48e27ba0961dbeee70344 06-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Move more functions/constants to sanitizer_common.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158056 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
8e820fcf7aafeb8101322182d742fcf99255d972 06-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] move internal_filesize and internal_dup2 from TSan to sanitizer_common.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158052 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
9edf7508e4ad536d26a202224548081d36eddd70 06-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] add sanitizer_common.h for routines shared between TSan and ASan runtimes. Use __sanitizer::Die() in TSan.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158050 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
b9a30e0799787a99147e2587ef5ecc8c5f224160 05-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] remove using namespace __sanitizer lines

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157999 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
0a4c906dbc8f150657ddd4f19a7192b779f1d605 05-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Use common defines for ASan and TSan runtime. Split defines between interface defines (can be visible in user code that includes interface ASan/TSan headers) and internal defines.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157998 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
562e19e2f200f5e9d411e75e5a8d62df90ecb4c9 05-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] Use internal_munmap from sanitizer_libc in TSan runtime.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157995 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
89345b088c65680b4b1250ca9a80fb6fc464447f 05-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] make TSan runtime use internal_{close,read,write} from sanitizer_libc

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157992 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
7f9c5a220b2768a450696bbd157a0e6f2e9ceea3 05-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] use __sanitizer::internal_open in TSan run-time

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157988 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
48aee681c0d800deb6c00f546bfaa377ece37326 05-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] use __sanitizer::internal_mmap in TSan run-time

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157984 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
603c4be006d8c53905d736bf1f19a49f5ce98276 04-Jun-2012 Alexey Samsonov <samsonov@google.com> Remove file-type tags in .cc files in tsan/ and sanitizer_common/

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157928 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
d350c35e3a4da6bf325b85e33df8701fcff39811 28-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: increase /proc/self/maps max size (1M is far not enough)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157570 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
75d48f2f4e7addb4d3167eea5ee12af81ada0522 28-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: more robust detection of stack of main thread


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157568 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
789b6c5669547b550034fc9888059b17e2ff1417 25-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: do not call into libc in symbolizer and in other code (this causes recursion and crashes)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157466 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
adfb65039646774f0f063b538f8fb0aec021f42b 22-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add shadow memory flush + fix few bugs


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157270 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
9d2ffc2ee08216f8fad9b1bd267d1f112e0d2f01 22-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: reduce per-thread memory usage


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157252 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
26127735454fddae3495794f38189d57dde6510f 22-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: simple memory profiler


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157248 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
37f60be6cf5d1d9f2be722095c68eb9cdbd5ef31 13-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix mmap fd
This is mostly to test my commit access.
Fixes fd passed to mmap(), -1 is the proper invalid fd.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156741 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
7ac41484ea322e0ea5774df681660269f5dc321e 10-May-2012 Kostya Serebryany <kcc@google.com> [tsan] First commit of ThreadSanitizer (TSan) run-time library.

Algorithm description: http://code.google.com/p/thread-sanitizer/wiki/ThreadSanitizerAlgorithm

Status:
The tool is known to work on large real-life applications, but still has quite a few rough edges.
Nothing is guaranteed yet.

The tool works on x86_64 Linux.
Support for 64-bit MacOS 10.7+ is planned for late 2012.
Support for 32-bit OSes is doable, but problematic and not yet planed.

Further commits coming:
- tests
- makefiles
- documentation
- clang driver patch

The code was previously developed at http://code.google.com/p/data-race-test/source/browse/trunk/v2/
by Dmitry Vyukov and Kostya Serebryany with contributions from
Timur Iskhodzhanov, Alexander Potapenko, Alexey Samsonov and Evgeniy Stepanov.




git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156542 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc