From: Evgenii Stepanov Date: Wed, 1 Nov 2017 22:04:42 +0000 (-0700) Subject: ANDROID: Revert "arm: move ELF_ET_DYN_BASE to 4MB" X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=05aa89aa8402ae319108731770a6c7d23f88c431;p=sagit-ice-cold%2Fkernel_xiaomi_msm8998.git ANDROID: Revert "arm: move ELF_ET_DYN_BASE to 4MB" This ARM mmap change breaks AddressSanitizer: Shadow memory range interleaves with an existing memory mapping. ASan cannot proceed correctly. ABORTING. Revert it until ASAN runtime library is updated to handle it. Bug: 67425063 This reverts commit d2471b5e84f32de4e09b58f5436a4ce3ee935e32. --- diff --git a/arch/arm/include/asm/elf.h b/arch/arm/include/asm/elf.h index f13ae153fb24..d2315ffd8f12 100644 --- a/arch/arm/include/asm/elf.h +++ b/arch/arm/include/asm/elf.h @@ -112,8 +112,12 @@ int dump_task_regs(struct task_struct *t, elf_gregset_t *elfregs); #define CORE_DUMP_USE_REGSET #define ELF_EXEC_PAGESIZE 4096 -/* This is the base location for PIE (ET_DYN with INTERP) loads. */ -#define ELF_ET_DYN_BASE 0x400000UL +/* This is the location that an ET_DYN program is loaded if exec'ed. Typical + use of this is to invoke "./ld.so someprog" to test out a new version of + the loader. We need to make sure that it is out of the way of the program + that it will "exec", and that there is sufficient room for the brk. */ + +#define ELF_ET_DYN_BASE (TASK_SIZE / 3 * 2) /* When the program starts, a1 contains a pointer to a function to be registered with atexit, as per the SVR4 ABI. A value of 0 means we