diff options
author | Ulrich Drepper <drepper@redhat.com> | 2009-07-27 13:23:00 -0700 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2009-07-27 13:23:00 -0700 |
commit | 87cfd82a1fc269635c9b0dd37c47470b5465e775 (patch) | |
tree | a1867085d05cc16cf2939393a25d16f0079e3daf /elf/dl-open.c | |
parent | 2d0671cbbdade9013d6fd5153d01bd5e1d3f60cb (diff) | |
download | glibc-87cfd82a1fc269635c9b0dd37c47470b5465e775.tar glibc-87cfd82a1fc269635c9b0dd37c47470b5465e775.tar.gz glibc-87cfd82a1fc269635c9b0dd37c47470b5465e775.tar.bz2 glibc-87cfd82a1fc269635c9b0dd37c47470b5465e775.zip |
Break out _dl_scope_free into its own file.
This reduces the coarse static callgraph that can be discovered by
looking at the object files.
Diffstat (limited to 'elf/dl-open.c')
-rw-r--r-- | elf/dl-open.c | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/elf/dl-open.c b/elf/dl-open.c index b8ebfe0e60..e920c7738c 100644 --- a/elf/dl-open.c +++ b/elf/dl-open.c @@ -165,41 +165,6 @@ add_to_global (struct link_map *new) return 0; } -int -_dl_scope_free (void *old) -{ - struct dl_scope_free_list *fsl; -#define DL_SCOPE_FREE_LIST_SIZE (sizeof (fsl->list) / sizeof (fsl->list[0])) - - if (RTLD_SINGLE_THREAD_P) - free (old); - else if ((fsl = GL(dl_scope_free_list)) == NULL) - { - GL(dl_scope_free_list) = fsl = malloc (sizeof (*fsl)); - if (fsl == NULL) - { - THREAD_GSCOPE_WAIT (); - free (old); - return 1; - } - else - { - fsl->list[0] = old; - fsl->count = 1; - } - } - else if (fsl->count < DL_SCOPE_FREE_LIST_SIZE) - fsl->list[fsl->count++] = old; - else - { - THREAD_GSCOPE_WAIT (); - while (fsl->count > 0) - free (fsl->list[--fsl->count]); - return 1; - } - return 0; -} - static void dl_open_worker (void *a) { |