llvm-project/compiler-rt/lib/tsan/go
Evgeniy Stepanov 8e9c70be7f Add descriptive names to sanitizer entries in /proc/self/maps. Helps debugging.
This is done by creating a named shared memory region, unlinking it
and setting up a private (i.e. copy-on-write) mapping of that instead
of a regular anonymous mapping. I've experimented with regular
(sparse) files, but they can not be scaled to the size of MSan shadow
mapping, at least on Linux/X86_64 and ext3 fs.

Controlled by a common flag, decorate_proc_maps, disabled by default.

This patch has a few shortcomings:
* not all mappings are annotated, especially in TSan.
* our handling of memset() of shadow via mmap() puts small anonymous
  mappings inside larger named mappings, which looks ugly and can, in
  theory, hit the mapping number limit.

llvm-svn: 238621
2015-05-29 22:31:28 +00:00
..
build.bat tsan: add -Wno-maybe-uninitialized to mingw gcc build flags 2015-02-18 09:37:31 +00:00
buildgo.sh Add descriptive names to sanitizer entries in /proc/self/maps. Helps debugging. 2015-05-29 22:31:28 +00:00
test.c tsan: update interface for Go 2014-03-06 13:17:28 +00:00
tsan_go.cc [TSan] Fix Go build. 2015-01-07 02:12:41 +00:00