[PATCH v6 16/17] arm64:ilp32: change COMPAT_ELF_PLATFORM to report a a subplatform for ILP32

Yury Norov ynorov at caviumnetworks.com
Mon Nov 2 15:30:45 PST 2015

From: Philipp Tomsich <philipp.tomsich at theobroma-systems.com>

To make life for tools (such as gdb) easier when dealing with ILP32 processes,
we report a proper subarchitecture for ILP32 in the ELF auxiliary vectors.

Signed-off-by: Philipp Tomsich <philipp.tomsich at theobroma-systems.com>
Signed-off-by: Christoph Muellner <christoph.muellner at theobroma-systems.com>
Signed-off-by: Yury Norov <ynorov at caviumnetworks.com>
Signed-off-by: Andrew Pinski <Andrew.Pinski at caviumnetworks.com>
Reviewed-by: David Daney <david.daney at cavium.com>
 arch/arm64/include/asm/elf.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/include/asm/elf.h b/arch/arm64/include/asm/elf.h
index 8f13dac..3e79569 100644
--- a/arch/arm64/include/asm/elf.h
+++ b/arch/arm64/include/asm/elf.h
@@ -163,9 +163,9 @@ extern int arch_setup_additional_pages(struct linux_binprm *bprm,
 #ifdef __AARCH64EB__
-#define COMPAT_ELF_PLATFORM		("v8b")
+#define COMPAT_ELF_PLATFORM		(is_ilp32_compat_task() ? "aarch64_be:ilp32" : "v8b")
-#define COMPAT_ELF_PLATFORM		("v8l")
+#define COMPAT_ELF_PLATFORM		(is_ilp32_compat_task() ? "aarch64:ilp32" : "v8l")
 #define COMPAT_ELF_ET_DYN_BASE		(2 * TASK_SIZE_32 / 3)

More information about the linux-arm-kernel mailing list