diff options
author | Ulrich Drepper <drepper@redhat.com> | 2007-06-18 20:50:49 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2007-06-18 20:50:49 +0000 |
commit | 3abee0b7f15aadf44f442ccdea30f0bdbe113293 (patch) | |
tree | f1687c6a2f471571b404c589dd0a8b1141b6ae0f | |
parent | 8907459218232f3c9ef460ae0ac15eff3a9867a8 (diff) | |
download | glibc-3abee0b7f15aadf44f442ccdea30f0bdbe113293.tar glibc-3abee0b7f15aadf44f442ccdea30f0bdbe113293.tar.gz glibc-3abee0b7f15aadf44f442ccdea30f0bdbe113293.tar.bz2 glibc-3abee0b7f15aadf44f442ccdea30f0bdbe113293.zip |
* elf/rtld.c (dl_main): Don't call init_tls more than once.
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | elf/rtld.c | 10 |
2 files changed, 9 insertions, 5 deletions
@@ -1,3 +1,7 @@ +2007-06-18 Jakub Jelinek <jakub@redhat.com> + + * elf/rtld.c (dl_main): Don't call init_tls more than once. + 2007-06-17 Andreas Schwab <schwab@suse.de> * sysdeps/generic/initfini.c: Tell gcc about the nonstandard sections. diff --git a/elf/rtld.c b/elf/rtld.c index c57ef17e13..7612a69324 100644 --- a/elf/rtld.c +++ b/elf/rtld.c @@ -1400,6 +1400,11 @@ of this helper program; chances are you did not intend to run this program.\n\ /* Iterate over all entries in the list. The order is important. */ struct audit_ifaces *last_audit = NULL; struct audit_list *al = audit_list->next; + + /* Since we start using the auditing DSOs right away we need to + initialize the data structures now. */ + tcbp = init_tls (); + do { int tls_idx = GL(dl_tls_max_dtv_idx); @@ -1409,11 +1414,6 @@ of this helper program; chances are you did not intend to run this program.\n\ always allocate the static block, we never defer it even if no DF_STATIC_TLS bit is set. The reason is that we know glibc will use the static model. */ - - /* Since we start using the auditing DSOs right away we need to - initialize the data structures now. */ - tcbp = init_tls (); - struct dlmopen_args dlmargs; dlmargs.fname = al->name; dlmargs.map = NULL; |