From: Szabolcs Nagy Date: Wed, 10 Jan 2024 16:20:24 +0000 (+0000) Subject: aarch64: Ignore GCS property of ld.so X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f5d24d883aa2272b608b309eb7192389e7121214;p=thirdparty%2Fglibc.git aarch64: Ignore GCS property of ld.so 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. --- diff --git a/sysdeps/aarch64/dl-gcs.c b/sysdeps/aarch64/dl-gcs.c index 764b8a56e9..b81aa30787 100644 --- a/sysdeps/aarch64/dl-gcs.c +++ b/sysdeps/aarch64/dl-gcs.c @@ -32,6 +32,11 @@ fail (struct link_map *l, const char *program) 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 (l->l_real == &GL(dl_rtld_map)) + return; +#endif if (!l->l_mach.gcs) { if (GLRO(dl_aarch64_gcs_policy) == 2 || !program)