From d6dea8c847a7fd053e94126dfbc920b9db0e0f97 Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Thu, 28 Oct 2021 07:55:36 -0300 Subject: [PATCH] arm: Use internal symbol for _dl_argv on _dl_start_user The lld does not support R_ARM_GOTOFF32 to preemptible symbol (_dl_argv has default visibility). Use the internal alias instead (one option would to use HIDDEN_JUMPTARGET, bu the macro is not defined for !__ASSEMBLER__ and I made this patch arm-specific to avoid require to check extensivelly on other architecture it this might break something). Checked on arm-linux-gnueabihf. Reviewed-by: Fangrui Song --- sysdeps/arm/dl-machine.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sysdeps/arm/dl-machine.h b/sysdeps/arm/dl-machine.h index c758bba1695..4ecdde43552 100644 --- a/sysdeps/arm/dl-machine.h +++ b/sysdeps/arm/dl-machine.h @@ -202,7 +202,7 @@ _dl_start_user:\n\ .L_FINI_PROC:\n\ .word _dl_fini(GOTOFF)\n\ .L_ARGV:\n\ - .word _dl_argv(GOTOFF)\n\ + .word __GI__dl_argv(GOTOFF)\n\ .L_LOADED:\n\ .word _rtld_local(GOTOFF)\n\ .previous\n\ -- 2.47.3