aboutsummaryrefslogtreecommitdiff
path: root/csu/libc-start.c
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2020-04-29 15:44:03 +0200
committerFlorian Weimer <fweimer@redhat.com>2020-04-29 15:44:03 +0200
commit03e187a41d91069543cfcf33469a05912e555447 (patch)
treea2f3afcc3e41af612e40fc9cab1ba9b3a811ce38 /csu/libc-start.c
parent2ad5d0845d80589d0adf86593bd36a7c71a521f8 (diff)
downloadglibc-03e187a41d91069543cfcf33469a05912e555447.zip
glibc-03e187a41d91069543cfcf33469a05912e555447.tar.gz
glibc-03e187a41d91069543cfcf33469a05912e555447.tar.bz2
elf: Add initial flag argument to __libc_early_init
The rseq initialization should happen only for the libc in the base namespace (in the dynamic case) or the statically linked libc. The __libc_multiple_libcs flag does not quite cover this case at present, so this commit introduces a flag argument to __libc_early_init, indicating whether the libc being libc is the primary one (of the main program). Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Diffstat (limited to 'csu/libc-start.c')
-rw-r--r--csu/libc-start.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/csu/libc-start.c b/csu/libc-start.c
index ccc743c..4005caf 100644
--- a/csu/libc-start.c
+++ b/csu/libc-start.c
@@ -23,6 +23,7 @@
#include <exit-thread.h>
#include <libc-internal.h>
#include <elf/libc-early-init.h>
+#include <stdbool.h>
#include <elf/dl-tunables.h>
@@ -241,7 +242,7 @@ LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL),
#ifndef SHARED
/* Perform early initialization. In the shared case, this function
is called from the dynamic loader as early as possible. */
- __libc_early_init ();
+ __libc_early_init (true);
/* Call the initializer of the libc. This is only needed here if we
are compiling for the static library in which case we haven't