[PATCH v8 16/20] aarch64: Ignore GCS property of ld.so
Yury Khrustalev
yury.khrustalev@arm.com
Tue Jan 14 16:03:24 GMT 2025
From: Szabolcs Nagy <szabolcs.nagy@arm.com>
check_gcs is called for each dependency of a DSO, but the GNU property
of the ld.so is not processed so ldso->l_mach.gcs may not be correct.
Just assume ld.so is GCS compatible independently of the ELF marking.
Reviewed-by: Wilco Dijkstra <Wilco.Dijkstra@arm.com>
---
sysdeps/aarch64/dl-gcs.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/sysdeps/aarch64/dl-gcs.c b/sysdeps/aarch64/dl-gcs.c
index 97146fb4bc..5c994d63a9 100644
--- a/sysdeps/aarch64/dl-gcs.c
+++ b/sysdeps/aarch64/dl-gcs.c
@@ -40,6 +40,11 @@ unsupported (void)
static void
check_gcs (struct link_map *l, const char *program)
{
+#ifdef SHARED
+ /* Ignore GCS marking on ld.so: its properties are not processed. */
+ if (is_rtld_link_map (l->l_real))
+ return;
+#endif
bool for_dlopen = program == NULL;
if (!l->l_mach.gcs)
{
--
2.39.5
More information about the Libc-alpha
mailing list