summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLirong Yuan2020-03-13 01:28:13 +0100
committerLaurent Vivier2020-03-20 15:51:54 +0100
commitaab613fb9597015b39bdc90da3ee80c0da05b927 (patch)
treef66a6d9f4d552d2c2de4c42a7856770bb12d6683
parentlinux-user: fix socket() strace (diff)
downloadqemu-aab613fb9597015b39bdc90da3ee80c0da05b927.tar.gz
qemu-aab613fb9597015b39bdc90da3ee80c0da05b927.tar.xz
qemu-aab613fb9597015b39bdc90da3ee80c0da05b927.zip
linux-user: Update TASK_UNMAPPED_BASE for aarch64
This change updates TASK_UNMAPPED_BASE (the base address for guest programs) for aarch64. It is needed to allow qemu to work with Thread Sanitizer (TSan), which has specific boundary definitions for memory mappings on different platforms: https://github.com/llvm/llvm-project/blob/master/compiler-rt/lib/tsan/rtl/tsan_platform.h Signed-off-by: Lirong Yuan <yuanzi@google.com> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20200313002813.3857-1-yuanzi@google.com> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
-rw-r--r--linux-user/mmap.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/linux-user/mmap.c b/linux-user/mmap.c
index 8685f02e7e..e378033797 100644
--- a/linux-user/mmap.c
+++ b/linux-user/mmap.c
@@ -184,7 +184,11 @@ static int mmap_frag(abi_ulong real_start,
}
#if HOST_LONG_BITS == 64 && TARGET_ABI_BITS == 64
+#ifdef TARGET_AARCH64
+# define TASK_UNMAPPED_BASE 0x5500000000
+#else
# define TASK_UNMAPPED_BASE (1ul << 38)
+#endif
#else
# define TASK_UNMAPPED_BASE 0x40000000
#endif