[asan] Hardcode page size 4096 on Android.

EXEC_PAGESIZE lies.
sysconf() is broken in .preinit_array.

llvm-svn: 276802
This commit is contained in:
Evgeniy Stepanov 2016-07-26 21:02:44 +00:00
parent 2a480599bb
commit 08ef0e0175
1 changed files with 3 additions and 2 deletions

View File

@ -801,8 +801,9 @@ bool ThreadLister::GetDirectoryEntries() {
uptr GetPageSize() {
// Android post-M sysconf(_SC_PAGESIZE) crashes if called from .preinit_array.
#if (SANITIZER_LINUX && (defined(__x86_64__) || defined(__i386__))) || \
SANITIZER_ANDROID
#if SANITIZER_ANDROID
return 4096;
#elif SANITIZER_LINUX && (defined(__x86_64__) || defined(__i386__))
return EXEC_PAGESIZE;
#else
return sysconf(_SC_PAGESIZE); // EXEC_PAGESIZE may not be trustworthy.