From 03e187a41d91069543cfcf33469a05912e555447 Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Wed, 29 Apr 2020 15:44:03 +0200 Subject: 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 --- csu/libc-start.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'csu') diff --git a/csu/libc-start.c b/csu/libc-start.c index ccc743c9d1..4005caf84a 100644 --- a/csu/libc-start.c +++ b/csu/libc-start.c @@ -23,6 +23,7 @@ #include #include #include +#include #include @@ -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 -- cgit 1.4.1