]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Properly set __libc_multiple_libcs
authorAndreas Schwab <schwab@redhat.com>
Fri, 11 Jun 2010 09:04:11 +0000 (11:04 +0200)
committerAndreas Schwab <schwab@redhat.com>
Fri, 11 Jun 2010 12:38:34 +0000 (14:38 +0200)
ChangeLog
elf/dl-init.c
elf/dl-support.c
elf/rtld.c

index 50ba655fc589759e7724c6ae73f978b2cba948f3..d8b57052f6381b49c807a4a0d4208e853dba1b67 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2010-06-11  Andreas Schwab  <schwab@redhat.com>
+
+       * elf/rtld.c (_dl_starting_up): Always define.
+       (dl_main): Always set _dl_starting_up.
+       * elf/dl-support.c (_dl_starting_up): Always define.
+       * elf/dl-init.c (_dl_init): Always clear _dl_starting_up.
+
 2010-06-10  Andreas Schwab  <schwab@redhat.com>
 
        * sysdeps/unix/sysv/linux/getpagesize.c: Don't assume AT_PAGESIZE
index e7b67570fd29a0807d1f41862b516652852b8e38..a108529675f147e4cf380f6b25e402576ffef919 100644 (file)
 /* Type of the initializer.  */
 typedef void (*init_t) (int, char **, char **);
 
-#ifndef HAVE_INLINED_SYSCALLS
 /* Flag, nonzero during startup phase.  */
 extern int _dl_starting_up;
 extern int _dl_starting_up_internal attribute_hidden;
-#endif
 
 
 static void
@@ -133,9 +131,7 @@ _dl_init (struct link_map *main_map, int argc, char **argv, char **env)
   while (i-- > 0)
     call_init (main_map->l_initfini[i], argc, argv, env);
 
-#ifndef HAVE_INLINED_SYSCALLS
   /* Finished starting up.  */
   INTUSE(_dl_starting_up) = 0;
-#endif
 }
 INTDEF (_dl_init)
index f94d2c4c6e0e095755a53eed217a361b7b6e9806..e575cb42a1e425cbc4106633b5bbef3b6dede56c 100644 (file)
@@ -80,10 +80,8 @@ unsigned long long _dl_load_adds;
    create a fake scope containing nothing.  */
 struct r_scope_elem _dl_initial_searchlist;
 
-#ifndef HAVE_INLINED_SYSCALLS
 /* Nonzero during startup.  */
 int _dl_starting_up = 1;
-#endif
 
 /* Random data provided by the kernel.  */
 void *_dl_random;
index 90f3ff126eb910fa90f6361726fec97c1370fc85..80fe0ab35b0655add485f912583a9d4e01bda935 100644 (file)
@@ -106,7 +106,6 @@ static struct audit_list
   struct audit_list *next;
 } *audit_list;
 
-#ifndef HAVE_INLINED_SYSCALLS
 /* Set nonzero during loading and initialization of executable and
    libraries, cleared before the executable's entry point runs.  This
    must not be initialized to nonzero, because the unused dynamic
@@ -116,7 +115,6 @@ static struct audit_list
    never be called.  */
 int _dl_starting_up = 0;
 INTVARDEF(_dl_starting_up)
-#endif
 
 /* This is the structure which defines all variables global to ld.so
    (except those which cannot be added for some reason).  */
@@ -922,10 +920,8 @@ dl_main (const ElfW(Phdr) *phdr,
   /* Process the environment variable which control the behaviour.  */
   process_envvars (&mode);
 
-#ifndef HAVE_INLINED_SYSCALLS
   /* Set up a flag which tells we are just starting.  */
   INTUSE(_dl_starting_up) = 1;
-#endif
 
   if (*user_entry == (ElfW(Addr)) ENTRY_POINT)
     {