about summary refs log tree commit diff
path: root/elf/dl-open.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2009-07-27 13:23:00 -0700
committerUlrich Drepper <drepper@redhat.com>2009-07-27 13:23:00 -0700
commit87cfd82a1fc269635c9b0dd37c47470b5465e775 (patch)
treea1867085d05cc16cf2939393a25d16f0079e3daf /elf/dl-open.c
parent2d0671cbbdade9013d6fd5153d01bd5e1d3f60cb (diff)
downloadglibc-87cfd82a1fc269635c9b0dd37c47470b5465e775.tar.gz
glibc-87cfd82a1fc269635c9b0dd37c47470b5465e775.tar.xz
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.c35
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)
 {