[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH htl v3 4/5] elf: Remove THREAD_GSCOPE_IN_TCB
From: |
Samuel Thibault |
Subject: |
Re: [PATCH htl v3 4/5] elf: Remove THREAD_GSCOPE_IN_TCB |
Date: |
Wed, 15 Sep 2021 01:29:09 +0200 |
User-agent: |
NeoMutt/20170609 (1.8.3) |
Sergey Bugaev, le mar. 07 sept. 2021 16:33:24 +0300, a ecrit:
> All the ports now have THREAD_GSCOPE_IN_TCB set to 1. Remove all
> support for !THREAD_GSCOPE_IN_TCB, along with the definition itself.
>
> Signed-off-by: Sergey Bugaev <bugaevc@gmail.com>
And thus a nice cleanup, thanks!
> ---
> elf/dl-support.c | 3 ---
> sysdeps/aarch64/nptl/tls.h | 1 -
> sysdeps/alpha/nptl/tls.h | 1 -
> sysdeps/arc/nptl/tls.h | 1 -
> sysdeps/arm/nptl/tls.h | 1 -
> sysdeps/csky/nptl/tls.h | 1 -
> sysdeps/generic/ldsodefs.h | 6 ------
> sysdeps/generic/tls.h | 6 ------
> sysdeps/hppa/nptl/tls.h | 1 -
> sysdeps/i386/nptl/tls.h | 1 -
> sysdeps/ia64/nptl/tls.h | 1 -
> sysdeps/m68k/nptl/tls.h | 1 -
> sysdeps/mach/hurd/i386/tls.h | 2 --
> sysdeps/microblaze/nptl/tls.h | 1 -
> sysdeps/mips/nptl/tls.h | 1 -
> sysdeps/nios2/nptl/tls.h | 1 -
> sysdeps/powerpc/nptl/tls.h | 1 -
> sysdeps/riscv/nptl/tls.h | 1 -
> sysdeps/s390/nptl/tls.h | 1 -
> sysdeps/sh/nptl/tls.h | 1 -
> sysdeps/sparc/nptl/tls.h | 1 -
> sysdeps/x86_64/nptl/tls.h | 1 -
> 22 files changed, 35 deletions(-)
>
> diff --git a/elf/dl-support.c b/elf/dl-support.c
> index a317459fae..02e2ed72f5 100644
> --- a/elf/dl-support.c
> +++ b/elf/dl-support.c
> @@ -197,9 +197,6 @@ int _dl_stack_cache_lock;
> int (*_dl_make_stack_executable_hook) (void **) = _dl_make_stack_executable;
> void (*_dl_init_static_tls) (struct link_map *) =
> &_dl_nothread_init_static_tls;
> #endif
> -#if !THREAD_GSCOPE_IN_TCB
> -int _dl_thread_gscope_count;
> -#endif
> struct dl_scope_free_list *_dl_scope_free_list;
>
> #ifdef NEED_DL_SYSINFO
> diff --git a/sysdeps/aarch64/nptl/tls.h b/sysdeps/aarch64/nptl/tls.h
> index 6e896207a6..72f22dc718 100644
> --- a/sysdeps/aarch64/nptl/tls.h
> +++ b/sysdeps/aarch64/nptl/tls.h
> @@ -109,7 +109,6 @@ typedef struct
> descr->member[idx] = (value)
>
> /* Get and set the global scope generation counter in struct pthread. */
> -# define THREAD_GSCOPE_IN_TCB 1
> # define THREAD_GSCOPE_FLAG_UNUSED 0
> # define THREAD_GSCOPE_FLAG_USED 1
> # define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/alpha/nptl/tls.h b/sysdeps/alpha/nptl/tls.h
> index 4dbccc5249..6328112135 100644
> --- a/sysdeps/alpha/nptl/tls.h
> +++ b/sysdeps/alpha/nptl/tls.h
> @@ -103,7 +103,6 @@ typedef struct
> descr->member[idx] = (value)
>
> /* Get and set the global scope generation counter in struct pthread. */
> -#define THREAD_GSCOPE_IN_TCB 1
> #define THREAD_GSCOPE_FLAG_UNUSED 0
> #define THREAD_GSCOPE_FLAG_USED 1
> #define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/arc/nptl/tls.h b/sysdeps/arc/nptl/tls.h
> index 95300fdd21..e269c0a7a5 100644
> --- a/sysdeps/arc/nptl/tls.h
> +++ b/sysdeps/arc/nptl/tls.h
> @@ -111,7 +111,6 @@ typedef struct
> descr->member[idx] = (value)
>
> /* Get and set the global scope generation counter in struct pthread. */
> -#define THREAD_GSCOPE_IN_TCB 1
> #define THREAD_GSCOPE_FLAG_UNUSED 0
> #define THREAD_GSCOPE_FLAG_USED 1
> #define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/arm/nptl/tls.h b/sysdeps/arm/nptl/tls.h
> index 1bd11307ce..699c16acfb 100644
> --- a/sysdeps/arm/nptl/tls.h
> +++ b/sysdeps/arm/nptl/tls.h
> @@ -100,7 +100,6 @@ typedef struct
> descr->member[idx] = (value)
>
> /* Get and set the global scope generation counter in struct pthread. */
> -#define THREAD_GSCOPE_IN_TCB 1
> #define THREAD_GSCOPE_FLAG_UNUSED 0
> #define THREAD_GSCOPE_FLAG_USED 1
> #define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/csky/nptl/tls.h b/sysdeps/csky/nptl/tls.h
> index 7a234041ed..b210dfcb76 100644
> --- a/sysdeps/csky/nptl/tls.h
> +++ b/sysdeps/csky/nptl/tls.h
> @@ -127,7 +127,6 @@ typedef struct
> descr->member[idx] = (value)
>
> /* Get and set the global scope generation counter in struct pthread. */
> -# define THREAD_GSCOPE_IN_TCB 1
> # define THREAD_GSCOPE_FLAG_UNUSED 0
> # define THREAD_GSCOPE_FLAG_USED 1
> # define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
> index 3092bbc924..b251fd1733 100644
> --- a/sysdeps/generic/ldsodefs.h
> +++ b/sysdeps/generic/ldsodefs.h
> @@ -495,10 +495,6 @@ struct rtld_global
> EXTERN struct __pthread **_dl_pthread_threads;
> EXTERN int _dl_pthread_threads_lock;
> #endif
> -
> -#if !THREAD_GSCOPE_IN_TCB
> - EXTERN int _dl_thread_gscope_count;
> -#endif
> #ifdef SHARED
> };
> # define __rtld_global_attribute__
> @@ -1381,10 +1377,8 @@ __rtld_mutex_init (void)
> }
> #endif /* !PTHREAD_IN_LIBC */
>
> -#if THREAD_GSCOPE_IN_TCB
> void __thread_gscope_wait (void) attribute_hidden;
> # define THREAD_GSCOPE_WAIT() __thread_gscope_wait ()
> -#endif
>
> __END_DECLS
>
> diff --git a/sysdeps/generic/tls.h b/sysdeps/generic/tls.h
> index e86d70e6ce..f581c9a992 100644
> --- a/sysdeps/generic/tls.h
> +++ b/sysdeps/generic/tls.h
> @@ -71,10 +71,4 @@
> This macro returns the address of the DTV of the current thread.
> This normally is done using the thread register which points
> to the dtv or the TCB (from which the DTV can found).
> -
> -
> - THREAD_GSCOPE_IN_TCB
> -
> - This should be set to 1 if the global scope flag is stored within the
> TCB.
> - When set to 0, GL(_dl_thread_gscope_count) will be defined to store it.
> */
> diff --git a/sysdeps/hppa/nptl/tls.h b/sysdeps/hppa/nptl/tls.h
> index 857003a7d3..55559eb327 100644
> --- a/sysdeps/hppa/nptl/tls.h
> +++ b/sysdeps/hppa/nptl/tls.h
> @@ -134,7 +134,6 @@ static inline void __set_cr27(struct pthread *cr27)
> }
>
> /* Get and set the global scope generation counter in struct pthread. */
> -#define THREAD_GSCOPE_IN_TCB 1
> #define THREAD_GSCOPE_FLAG_UNUSED 0
> #define THREAD_GSCOPE_FLAG_USED 1
> #define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/i386/nptl/tls.h b/sysdeps/i386/nptl/tls.h
> index 86ee1ef302..cfb27f5ccd 100644
> --- a/sysdeps/i386/nptl/tls.h
> +++ b/sysdeps/i386/nptl/tls.h
> @@ -375,7 +375,6 @@ tls_fill_user_desc (union user_desc_init *desc,
>
>
> /* Get and set the global scope generation counter in the TCB head. */
> -#define THREAD_GSCOPE_IN_TCB 1
> #define THREAD_GSCOPE_FLAG_UNUSED 0
> #define THREAD_GSCOPE_FLAG_USED 1
> #define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/ia64/nptl/tls.h b/sysdeps/ia64/nptl/tls.h
> index 66d9bf3189..8c26728859 100644
> --- a/sysdeps/ia64/nptl/tls.h
> +++ b/sysdeps/ia64/nptl/tls.h
> @@ -155,7 +155,6 @@ register struct pthread *__thread_self __asm__("r13");
> = THREAD_GET_POINTER_GUARD ())
>
> /* Get and set the global scope generation counter in struct pthread. */
> -#define THREAD_GSCOPE_IN_TCB 1
> #define THREAD_GSCOPE_FLAG_UNUSED 0
> #define THREAD_GSCOPE_FLAG_USED 1
> #define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/m68k/nptl/tls.h b/sysdeps/m68k/nptl/tls.h
> index dd526cdc2e..34906b1c13 100644
> --- a/sysdeps/m68k/nptl/tls.h
> +++ b/sysdeps/m68k/nptl/tls.h
> @@ -132,7 +132,6 @@ extern void * __m68k_read_tp (void);
> # define NO_TLS_OFFSET -1
>
> /* Get and set the global scope generation counter in struct pthread. */
> -#define THREAD_GSCOPE_IN_TCB 1
> #define THREAD_GSCOPE_FLAG_UNUSED 0
> #define THREAD_GSCOPE_FLAG_USED 1
> #define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/mach/hurd/i386/tls.h b/sysdeps/mach/hurd/i386/tls.h
> index 2ac65df921..c70ea73a81 100644
> --- a/sysdeps/mach/hurd/i386/tls.h
> +++ b/sysdeps/mach/hurd/i386/tls.h
> @@ -370,8 +370,6 @@ _hurd_tls_new (thread_t child, struct i386_thread_state
> *state, tcbhead_t *tcb)
> }
>
> /* Global scope switch support. */
> -# define THREAD_GSCOPE_IN_TCB 1
> -
> # define THREAD_GSCOPE_FLAG_UNUSED 0
> # define THREAD_GSCOPE_FLAG_USED 1
> # define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/microblaze/nptl/tls.h b/sysdeps/microblaze/nptl/tls.h
> index c93d90b11b..0ca67a777d 100644
> --- a/sysdeps/microblaze/nptl/tls.h
> +++ b/sysdeps/microblaze/nptl/tls.h
> @@ -116,7 +116,6 @@ typedef struct
> (descr->member[idx] = (value))
>
> /* Get and set the global scope generation counter in struct pthread. */
> -# define THREAD_GSCOPE_IN_TCB 1
> # define THREAD_GSCOPE_FLAG_UNUSED 0
> # define THREAD_GSCOPE_FLAG_USED 1
> # define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/mips/nptl/tls.h b/sysdeps/mips/nptl/tls.h
> index c09f49071c..04e823b4c7 100644
> --- a/sysdeps/mips/nptl/tls.h
> +++ b/sysdeps/mips/nptl/tls.h
> @@ -158,7 +158,6 @@ typedef struct
> # define NO_TLS_OFFSET -1
>
> /* Get and set the global scope generation counter in struct pthread. */
> -#define THREAD_GSCOPE_IN_TCB 1
> #define THREAD_GSCOPE_FLAG_UNUSED 0
> #define THREAD_GSCOPE_FLAG_USED 1
> #define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/nios2/nptl/tls.h b/sysdeps/nios2/nptl/tls.h
> index 02a05b4e74..fd484135f4 100644
> --- a/sysdeps/nios2/nptl/tls.h
> +++ b/sysdeps/nios2/nptl/tls.h
> @@ -137,7 +137,6 @@ register struct pthread *__thread_self __asm__("r23");
> # define NO_TLS_OFFSET -1
>
> /* Get and set the global scope generation counter in struct pthread. */
> -#define THREAD_GSCOPE_IN_TCB 1
> #define THREAD_GSCOPE_FLAG_UNUSED 0
> #define THREAD_GSCOPE_FLAG_USED 1
> #define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/powerpc/nptl/tls.h b/sysdeps/powerpc/nptl/tls.h
> index 6c779b6609..cc93c44964 100644
> --- a/sysdeps/powerpc/nptl/tls.h
> +++ b/sysdeps/powerpc/nptl/tls.h
> @@ -231,7 +231,6 @@ typedef struct
> # define NO_TLS_OFFSET -1
>
> /* Get and set the global scope generation counter in struct pthread. */
> -#define THREAD_GSCOPE_IN_TCB 1
> #define THREAD_GSCOPE_FLAG_UNUSED 0
> #define THREAD_GSCOPE_FLAG_USED 1
> #define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/riscv/nptl/tls.h b/sysdeps/riscv/nptl/tls.h
> index 5350bcc049..e4bd736feb 100644
> --- a/sysdeps/riscv/nptl/tls.h
> +++ b/sysdeps/riscv/nptl/tls.h
> @@ -119,7 +119,6 @@ typedef struct
> # define NO_TLS_OFFSET -1
>
> /* Get and set the global scope generation counter in struct pthread. */
> -# define THREAD_GSCOPE_IN_TCB 1
> # define THREAD_GSCOPE_FLAG_UNUSED 0
> # define THREAD_GSCOPE_FLAG_USED 1
> # define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/s390/nptl/tls.h b/sysdeps/s390/nptl/tls.h
> index efb52515e0..804486dfdd 100644
> --- a/sysdeps/s390/nptl/tls.h
> +++ b/sysdeps/s390/nptl/tls.h
> @@ -165,7 +165,6 @@ typedef struct
> #define THREAD_COPY_POINTER_GUARD(descr)
>
> /* Get and set the global scope generation counter in struct pthread. */
> -#define THREAD_GSCOPE_IN_TCB 1
> #define THREAD_GSCOPE_FLAG_UNUSED 0
> #define THREAD_GSCOPE_FLAG_USED 1
> #define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/sh/nptl/tls.h b/sysdeps/sh/nptl/tls.h
> index ac3c9a9e85..2a9ee1def1 100644
> --- a/sysdeps/sh/nptl/tls.h
> +++ b/sysdeps/sh/nptl/tls.h
> @@ -141,7 +141,6 @@ typedef struct
> ((tcbhead_t *) (descr + 1))->pointer_guard =
> __tcbp->pointer_guard;})
>
> /* Get and set the global scope generation counter in struct pthread. */
> -#define THREAD_GSCOPE_IN_TCB 1
> #define THREAD_GSCOPE_FLAG_UNUSED 0
> #define THREAD_GSCOPE_FLAG_USED 1
> #define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/sparc/nptl/tls.h b/sysdeps/sparc/nptl/tls.h
> index dd1eb82a59..55955f376a 100644
> --- a/sysdeps/sparc/nptl/tls.h
> +++ b/sysdeps/sparc/nptl/tls.h
> @@ -138,7 +138,6 @@ register struct pthread *__thread_self __asm__("%g7");
> ((descr)->header.pointer_guard = THREAD_GET_POINTER_GUARD ())
>
> /* Get and set the global scope generation counter in struct pthread. */
> -#define THREAD_GSCOPE_IN_TCB 1
> #define THREAD_GSCOPE_FLAG_UNUSED 0
> #define THREAD_GSCOPE_FLAG_USED 1
> #define THREAD_GSCOPE_FLAG_WAIT 2
> diff --git a/sysdeps/x86_64/nptl/tls.h b/sysdeps/x86_64/nptl/tls.h
> index a78c4f4d01..b0d044353b 100644
> --- a/sysdeps/x86_64/nptl/tls.h
> +++ b/sysdeps/x86_64/nptl/tls.h
> @@ -326,7 +326,6 @@ _Static_assert (offsetof (tcbhead_t, __glibc_unused2) ==
> 0x80,
>
>
> /* Get and set the global scope generation counter in the TCB head. */
> -# define THREAD_GSCOPE_IN_TCB 1
> # define THREAD_GSCOPE_FLAG_UNUSED 0
> # define THREAD_GSCOPE_FLAG_USED 1
> # define THREAD_GSCOPE_FLAG_WAIT 2
> --
> 2.31.1
>
--
Samuel
In mutt, type cthis
Dans mutt, taper cceci
- [PATCH htl v3 0/5] Rewrite THREAD_GSCOPE, Sergey Bugaev, 2021/09/07
- [PATCH htl v3 2/5] htl: Move thread table to ld.so, Sergey Bugaev, 2021/09/07
- Re: [PATCH htl v3 2/5] htl: Move thread table to ld.so, Samuel Thibault, 2021/09/14
- Re: [PATCH htl v3 2/5] htl: Move thread table to ld.so, Sergey Bugaev, 2021/09/15
- Re: [PATCH htl v3 2/5] htl: Move thread table to ld.so, Samuel Thibault, 2021/09/15
- Re: [PATCH htl v3 2/5] htl: Move thread table to ld.so, Samuel Thibault, 2021/09/15
- Re: [PATCH htl v3 2/5] htl: Move thread table to ld.so, Sergey Bugaev, 2021/09/15
- Re: [PATCH htl v3 2/5] htl: Move thread table to ld.so, Samuel Thibault, 2021/09/15
[PATCH htl v3 4/5] elf: Remove THREAD_GSCOPE_IN_TCB, Sergey Bugaev, 2021/09/07
- Re: [PATCH htl v3 4/5] elf: Remove THREAD_GSCOPE_IN_TCB,
Samuel Thibault <=
[PATCH htl v3 3/5] htl: Reimplement GSCOPE, Sergey Bugaev, 2021/09/07
[PATCH htl v3 5/5] testrun.sh: Add support for --tool=rpctrace, Sergey Bugaev, 2021/09/07
[PATCH htl v3 1/5] elf: Replace most uses of THREAD_GSCOPE_IN_TCB, Sergey Bugaev, 2021/09/07
Re: [PATCH htl v3 0/5] Rewrite THREAD_GSCOPE, Adhemerval Zanella, 2021/09/07