git: 5f00525dfca4 - main - i386: move hard-coded load address for PIE below default linker base
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 25 Oct 2022 16:00:53 UTC
The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=5f00525dfca4b1fbb0f8296a411bf57c23bce694 commit 5f00525dfca4b1fbb0f8296a411bf57c23bce694 Author: Konstantin Belousov <kib@FreeBSD.org> AuthorDate: 2022-10-22 20:03:17 +0000 Commit: Konstantin Belousov <kib@FreeBSD.org> CommitDate: 2022-10-25 16:00:44 +0000 i386: move hard-coded load address for PIE below default linker base both for i386 native and compat32 amd64. We know the ld-elf.so.1 size in advance, it fits there. Trying to push it up after the end of a binary cannot work reliably and eventually fail for large binaries. Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D37085 --- sys/x86/include/elf.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/x86/include/elf.h b/sys/x86/include/elf.h index e587b52202e8..e8744858e4b7 100644 --- a/sys/x86/include/elf.h +++ b/sys/x86/include/elf.h @@ -89,7 +89,7 @@ __ElfType(Auxinfo); #define ELF_TARG_MACH EM_386 #define ELF_TARG_VER 1 -#define ET_DYN_LOAD_ADDR 0x01001000 +#define ET_DYN_LOAD_ADDR 0x00002000 #elif defined(__amd64__) @@ -150,7 +150,7 @@ __ElfType(Auxinfo); #define ELF_TARG_VER 1 #if __ELF_WORD_SIZE == 32 -#define ET_DYN_LOAD_ADDR 0x01001000 +#define ET_DYN_LOAD_ADDR 0x00002000 #else #define ET_DYN_LOAD_ADDR 0x01021000 #endif