diff options
author | Ulrich Drepper <drepper@redhat.com> | 2007-09-29 06:58:31 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2007-09-29 06:58:31 +0000 |
commit | 385b4cf4c51a4b332244f741244bf3241c1f1b1f (patch) | |
tree | abf4daf5f6451bca168768287f56294bf7134912 /elf/dl-close.c | |
parent | 90bf831bda032b2a0ef772741877e922e4c8ed4d (diff) | |
download | glibc-385b4cf4c51a4b332244f741244bf3241c1f1b1f.zip glibc-385b4cf4c51a4b332244f741244bf3241c1f1b1f.tar.gz glibc-385b4cf4c51a4b332244f741244bf3241c1f1b1f.tar.bz2 |
* sysdeps/generic/ldsodefs.h (struct dl_scope_free_list): Storecvs/fedora-glibc-20070929T1859
void * pointers instead of struct link_map **.
(_dl_scope_free): Change argument type to void *.
* include/link.h (struct link_map): Change type of l_reldeps
to struct link_map_reldeps, move l_reldepsact into that
struct too.
* elf/dl-deps.c: Include atomic.h.
(_dl_map_object_deps): Only change l->l_initfini when it is
fully populated, use _dl_scope_free for freeing it. Optimize
removal of libs from reldeps by using l_reserved flag, when
some removal is needed, allocate a new list instead of
reallocating and free the old with _dl_scope_free. Adjust
for l_reldeps and l_reldepsact changes.
* elf/dl-lookup.c (add_dependency): Likewise. Reorganize to allow
searching in l_initfini and l_reldeps without holding dl_load_lock.
* elf/dl-fini.c (_dl_sort_fini): Adjust for l_reldeps and
l_reldepsact changes.
* elf/dl-close.c (_dl_close_worker): Likewise.
* elf/dl-open.c (_dl_scope_free): Change argument type to void *.
Diffstat (limited to 'elf/dl-close.c')
-rw-r--r-- | elf/dl-close.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/elf/dl-close.c b/elf/dl-close.c index 67188bb..264e13a 100644 --- a/elf/dl-close.c +++ b/elf/dl-close.c @@ -203,9 +203,9 @@ _dl_close_worker (struct link_map *map) } /* And the same for relocation dependencies. */ if (l->l_reldeps != NULL) - for (unsigned int j = 0; j < l->l_reldepsact; ++j) + for (unsigned int j = 0; j < l->l_reldeps->act; ++j) { - struct link_map *jmap = l->l_reldeps[j]; + struct link_map *jmap = l->l_reldeps->list[j]; if (jmap->l_idx != IDX_STILL_USED) { @@ -497,7 +497,7 @@ _dl_close_worker (struct link_map *map) THREAD_GSCOPE_WAIT (); /* Now we can free any queued old scopes. */ - struct dl_scope_free_list *fsl = GL(dl_scope_free_list); + struct dl_scope_free_list *fsl = GL(dl_scope_free_list); if (fsl != NULL) while (fsl->count > 0) free (fsl->list[--fsl->count]); |