aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/aarch64/dl-gcs.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/aarch64/dl-gcs.c')
-rw-r--r--sysdeps/aarch64/dl-gcs.c5
1 files changed, 5 insertions, 0 deletions
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)