[10/23] elf: Remove DL_STATIC_INIT

Message ID c01baffa4a3f83ab52dd0254000694209f74bfa0.1620838411.git.fweimer@redhat.com
State New
Headers show
Series
  • nptl: Move almost all remaining functions into libc
Related show

Commit Message

Andreas K. Huettel via Libc-alpha May 12, 2021, 4:58 p.m.
All users have been converted to the __rtld_static_init mechanism.
---
 elf/dl-open.c              | 4 ----
 sysdeps/generic/ldsodefs.h | 6 ------
 2 files changed, 10 deletions(-)

-- 
2.31.1

Comments

Andreas K. Huettel via Libc-alpha May 13, 2021, 7:38 p.m. | #1
On 12/05/2021 13:58, Florian Weimer via Libc-alpha wrote:
> All users have been converted to the __rtld_static_init mechanism.


LGTM.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>


> ---

>  elf/dl-open.c              | 4 ----

>  sysdeps/generic/ldsodefs.h | 6 ------

>  2 files changed, 10 deletions(-)

> 

> diff --git a/elf/dl-open.c b/elf/dl-open.c

> index 7e018bb44c..5a870aaf2e 100644

> --- a/elf/dl-open.c

> +++ b/elf/dl-open.c

> @@ -781,10 +781,6 @@ dl_open_worker (void *a)

>        _dl_call_libc_early_init (libc_map, initial);

>      }

>  

> -#ifndef SHARED

> -  DL_STATIC_INIT (new);

> -#endif

> -

>    /* Run the initializer functions of new objects.  Temporarily

>       disable the exception handler, so that lazy binding failures are

>       fatal.  */

> diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h

> index e43d6f5ecd..c288f3a2a1 100644

> --- a/sysdeps/generic/ldsodefs.h

> +++ b/sysdeps/generic/ldsodefs.h

> @@ -135,12 +135,6 @@ dl_symbol_visibility_binds_local_p (const ElfW(Sym) *sym)

>  # define DL_UNMAP(map)	_dl_unmap_segments (map)

>  #endif

>  

> -/* By default we do not need special support to initialize DSOs loaded

> -   by statically linked binaries.  */

> -#ifndef DL_STATIC_INIT

> -# define DL_STATIC_INIT(map)

> -#endif

> -

>  /* Reloc type classes as returned by elf_machine_type_class().

>     ELF_RTYPE_CLASS_PLT means this reloc should not be satisfied by

>     some PLT symbol, ELF_RTYPE_CLASS_COPY means this reloc should not be

>

Patch

diff --git a/elf/dl-open.c b/elf/dl-open.c
index 7e018bb44c..5a870aaf2e 100644
--- a/elf/dl-open.c
+++ b/elf/dl-open.c
@@ -781,10 +781,6 @@  dl_open_worker (void *a)
       _dl_call_libc_early_init (libc_map, initial);
     }
 
-#ifndef SHARED
-  DL_STATIC_INIT (new);
-#endif
-
   /* Run the initializer functions of new objects.  Temporarily
      disable the exception handler, so that lazy binding failures are
      fatal.  */
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
index e43d6f5ecd..c288f3a2a1 100644
--- a/sysdeps/generic/ldsodefs.h
+++ b/sysdeps/generic/ldsodefs.h
@@ -135,12 +135,6 @@  dl_symbol_visibility_binds_local_p (const ElfW(Sym) *sym)
 # define DL_UNMAP(map)	_dl_unmap_segments (map)
 #endif
 
-/* By default we do not need special support to initialize DSOs loaded
-   by statically linked binaries.  */
-#ifndef DL_STATIC_INIT
-# define DL_STATIC_INIT(map)
-#endif
-
 /* Reloc type classes as returned by elf_machine_type_class().
    ELF_RTYPE_CLASS_PLT means this reloc should not be satisfied by
    some PLT symbol, ELF_RTYPE_CLASS_COPY means this reloc should not be