This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.24-510-gd08ab9c


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  d08ab9ced75e0d88827e0bb58183612afb7fe1fd (commit)
      from  fcd942370ff863f67f971e255d30fb9c1f127607 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=d08ab9ced75e0d88827e0bb58183612afb7fe1fd

commit d08ab9ced75e0d88827e0bb58183612afb7fe1fd
Author: Florian Weimer <fweimer@redhat.com>
Date:   Wed Dec 21 14:30:56 2016 +0100

    Remove unused function _dl_tls_setup
    
    Commit 7a5e3d9d633c828d84a9535f26b202a6179978e7 (elf: Assume TLS is
    initialized in _dl_map_object_from_fd) removed the last call of
    _dl_tls_setup, but did not remove the function itself.

diff --git a/ChangeLog b/ChangeLog
index 30f1c82..b8436d3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2016-12-21  Florian Weimer  <fweimer@redhat.com>
+
+	* csu/libc-tls.c (_dl_tls_setup): Remove.
+	* elf/dl-tls.c (_dl_tls_setup): Likewise.
+	* elf/Versions (GLIBC_PRIVATE): Remove _dl_tls_setup.
+	* sysdeps/generic/ldsodefs.h (_dl_tls_setup): Remove declaration.
+
 2016-12-21  Nick Alcock <nick.alcock@oracle.com>
 
 	[BZ #7065]
diff --git a/csu/libc-tls.c b/csu/libc-tls.c
index 235ac79..8f92234 100644
--- a/csu/libc-tls.c
+++ b/csu/libc-tls.c
@@ -216,25 +216,6 @@ __libc_setup_tls (size_t tcbsize, size_t tcbalign)
   init_static_tls (memsz, MAX (TLS_TCB_ALIGN, max_align));
 }
 
-/* This is called only when the data structure setup was skipped at startup,
-   when there was no need for it then.  Now we have dynamically loaded
-   something needing TLS, or libpthread needs it.  */
-int
-internal_function
-_dl_tls_setup (void)
-{
-  init_slotinfo ();
-  init_static_tls (
-#if TLS_TCB_AT_TP
-		   TLS_TCB_SIZE,
-#else
-		   0,
-#endif
-		   TLS_TCB_ALIGN);
-  return 0;
-}
-
-
 /* This is the minimal initialization function used when libpthread is
    not used.  */
 void
diff --git a/elf/Versions b/elf/Versions
index 08f76a7..3d57e36 100644
--- a/elf/Versions
+++ b/elf/Versions
@@ -59,7 +59,7 @@ ld {
     _dl_allocate_tls; _dl_allocate_tls_init;
     _dl_argv; _dl_find_dso_for_object; _dl_get_tls_static_info;
     _dl_deallocate_tls; _dl_make_stack_executable; _dl_out_of_memory;
-    _dl_rtld_di_serinfo; _dl_starting_up; _dl_tls_setup;
+    _dl_rtld_di_serinfo; _dl_starting_up;
     _rtld_global; _rtld_global_ro;
 
     # Only here for gdb while a better method is developed.
diff --git a/elf/dl-tls.c b/elf/dl-tls.c
index 60f4c1d..97bd977 100644
--- a/elf/dl-tls.c
+++ b/elf/dl-tls.c
@@ -274,39 +274,7 @@ _dl_determine_tlsoffset (void)
   /* The alignment requirement for the static TLS block.  */
   GL(dl_tls_static_align) = max_align;
 }
-
-
-/* This is called only when the data structure setup was skipped at startup,
-   when there was no need for it then.  Now we have dynamically loaded
-   something needing TLS, or libpthread needs it.  */
-int
-internal_function
-_dl_tls_setup (void)
-{
-  assert (GL(dl_tls_dtv_slotinfo_list) == NULL);
-  assert (GL(dl_tls_max_dtv_idx) == 0);
-
-  const size_t nelem = 2 + TLS_SLOTINFO_SURPLUS;
-
-  GL(dl_tls_dtv_slotinfo_list)
-    = calloc (1, (sizeof (struct dtv_slotinfo_list)
-		  + nelem * sizeof (struct dtv_slotinfo)));
-  if (GL(dl_tls_dtv_slotinfo_list) == NULL)
-    return -1;
-
-  GL(dl_tls_dtv_slotinfo_list)->len = nelem;
-
-  /* Number of elements in the static TLS block.  It can't be zero
-     because of various assumptions.  The one element is null.  */
-  GL(dl_tls_static_nelem) = GL(dl_tls_max_dtv_idx) = 1;
-
-  /* This initializes more variables for us.  */
-  _dl_determine_tlsoffset ();
-
-  return 0;
-}
-rtld_hidden_def (_dl_tls_setup)
-#endif
+#endif /* SHARED */
 
 static void *
 internal_function
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
index 288f5fe..34d7ec1 100644
--- a/sysdeps/generic/ldsodefs.h
+++ b/sysdeps/generic/ldsodefs.h
@@ -994,12 +994,6 @@ extern size_t _dl_count_modids (void) internal_function attribute_hidden;
 /* Calculate offset of the TLS blocks in the static TLS block.  */
 extern void _dl_determine_tlsoffset (void) internal_function attribute_hidden;
 
-/* Set up the data structures for TLS, when they were not set up at startup.
-   Returns nonzero on malloc failure.
-   This is called from _dl_map_object_from_fd or by libpthread.  */
-extern int _dl_tls_setup (void) internal_function;
-rtld_hidden_proto (_dl_tls_setup)
-
 /* Allocate memory for static TLS block (unless MEM is nonzero) and dtv.  */
 extern void *_dl_allocate_tls (void *mem) internal_function;
 rtld_hidden_proto (_dl_allocate_tls)

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                  |    7 +++++++
 csu/libc-tls.c             |   19 -------------------
 elf/Versions               |    2 +-
 elf/dl-tls.c               |   34 +---------------------------------
 sysdeps/generic/ldsodefs.h |    6 ------
 5 files changed, 9 insertions(+), 59 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]