From: Adhemerval Zanella Date: Thu, 28 Oct 2021 10:55:36 +0000 (-0300) Subject: arm: Use internal symbol for _dl_argv on _dl_start_user X-Git-Tag: glibc-2.35~369 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d6dea8c847a7fd053e94126dfbc920b9db0e0f97;p=thirdparty%2Fglibc.git 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 --- 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\