summaryrefslogtreecommitdiff
path: root/test/tsan/ignore_lib0.cc
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2015-08-05 15:17:59 +0000
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2015-08-05 15:17:59 +0000
commit925201613a92897de9019c1b5fd0199622820012 (patch)
treede96d35ac1091b384743fdc90c0ec645a666d35e /test/tsan/ignore_lib0.cc
parent05e761714b3b67a43cc9a0c67bc6750d7994d7ef (diff)
[tsan] Enable tsan for aarch64
This patch enabled TSAN for aarch64 with 39-bit VMA layout. As defined by tsan_platform.h the layout used is: 0000 4000 00 - 0200 0000 00: main binary 2000 0000 00 - 4000 0000 00: shadow memory 4000 0000 00 - 5000 0000 00: metainfo 5000 0000 00 - 6000 0000 00: - 6000 0000 00 - 6200 0000 00: traces 6200 0000 00 - 7d00 0000 00: - 7d00 0000 00 - 7e00 0000 00: heap 7e00 0000 00 - 7fff ffff ff: modules and main thread stack Which gives it about 8GB for main binary, 4GB for heap and 8GB for modules and main thread stack. Most of tests are passing, with the exception of: * ignore_lib0, ignore_lib1, ignore_lib3 due a kernel limitation for no support to make mmap page non-executable. * longjmp tests due missing specialized assembly routines. These tests are xfail for now. The only tsan issue still showing is: rtl/TsanRtlTest/Posix.ThreadLocalAccesses Which still required further investigation. The test is disable for aarch64 for now. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@244055 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/tsan/ignore_lib0.cc')
-rw-r--r--test/tsan/ignore_lib0.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/test/tsan/ignore_lib0.cc b/test/tsan/ignore_lib0.cc
index 63c9340e9..13d0fb92f 100644
--- a/test/tsan/ignore_lib0.cc
+++ b/test/tsan/ignore_lib0.cc
@@ -8,6 +8,9 @@
// Tests that interceptors coming from a library specified in called_from_lib
// suppression are ignored.
+// Some aarch64 kernels do not support non executable write pages
+// XFAIL: aarch64
+
#ifndef LIB
extern "C" void libfunc();