Skip to content
This repository was archived by the owner on May 21, 2019. It is now read-only.

Commit 3e87a26

Browse files
committed
[asan] Enable 48-bit VMA support on aarch64
This patch adds 48-bits VMA support for asan on aarch64. The current 47-bit mask is not suffice since on aarch64 kernel with 48-bit vma (default on ubuntu 16.04) the process may use full VMA range as: [...] ffffa39a7000-ffffa39a8000 r--p 00000000 00:00 0 [vvar] ffffa39a8000-ffffa39a9000 r-xp 00000000 00:00 0 [vdso] ffffa39a9000-ffffa39aa000 r--p 0001c000 08:02 13631554 /lib/aarch64-linux-gnu/ld-2.23.so ffffa39aa000-ffffa39ac000 rw-p 0001d000 08:02 13631554 /lib/aarch64-linux-gnu/ld-2.23.so ffffc2227000-ffffc2248000 rw-p 00000000 00:00 0 [stack] git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@275792 91177308-0d34-0410-b5e6-96231b3b80d8
1 parent f9fc3de commit 3e87a26

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

lib/sanitizer_common/sanitizer_platform.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,8 @@
180180
// will still work but will consume more memory for TwoLevelByteMap.
181181
#if defined(__mips__)
182182
# define SANITIZER_MMAP_RANGE_SIZE FIRST_32_SECOND_64(1ULL << 32, 1ULL << 40)
183+
#elif defined(__aarch64__)
184+
# define SANITIZER_MMAP_RANGE_SIZE FIRST_32_SECOND_64(1ULL << 32, 1ULL << 48)
183185
#else
184186
# define SANITIZER_MMAP_RANGE_SIZE FIRST_32_SECOND_64(1ULL << 32, 1ULL << 47)
185187
#endif

0 commit comments

Comments
 (0)