From: Samuel Thibault via Libc-alpha <libc-alpha@sourceware.org>
To: Sergey Bugaev <bugaevc@gmail.com>
Cc: bug-hurd@gnu.org, libc-alpha@sourceware.org
Subject: Re: [PATCH htl v3 4/5] elf: Remove THREAD_GSCOPE_IN_TCB
Date: Wed, 15 Sep 2021 01:29:09 +0200 [thread overview]
Message-ID: <20210914232909.7nzqwsnjf2cz2ml5@begin> (raw)
In-Reply-To: <20210907133325.255690-5-bugaevc@gmail.com>
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
next prev parent reply other threads:[~2021-09-14 23:31 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-07 13:33 [PATCH htl v3 0/5] Rewrite THREAD_GSCOPE Sergey Bugaev via Libc-alpha
2021-09-07 13:33 ` [PATCH htl v3 1/5] elf: Replace most uses of THREAD_GSCOPE_IN_TCB Sergey Bugaev via Libc-alpha
2021-09-14 23:30 ` Samuel Thibault via Libc-alpha
2021-09-07 13:33 ` [PATCH htl v3 2/5] htl: Move thread table to ld.so Sergey Bugaev via Libc-alpha
2021-09-14 23:27 ` Samuel Thibault via Libc-alpha
2021-09-15 14:14 ` Sergey Bugaev via Libc-alpha
2021-09-15 14:34 ` Samuel Thibault via Libc-alpha
2021-09-15 14:35 ` Samuel Thibault via Libc-alpha
2021-09-15 15:13 ` Sergey Bugaev via Libc-alpha
2021-09-15 15:16 ` Samuel Thibault via Libc-alpha
2021-09-07 13:33 ` [PATCH htl v3 3/5] htl: Reimplement GSCOPE Sergey Bugaev via Libc-alpha
2021-09-14 23:28 ` Samuel Thibault via Libc-alpha
2021-09-07 13:33 ` [PATCH htl v3 4/5] elf: Remove THREAD_GSCOPE_IN_TCB Sergey Bugaev via Libc-alpha
2021-09-14 23:29 ` Samuel Thibault via Libc-alpha [this message]
2021-09-07 13:33 ` [PATCH htl v3 5/5] testrun.sh: Add support for --tool=rpctrace Sergey Bugaev via Libc-alpha
2021-09-08 6:57 ` Florian Weimer via Libc-alpha
2021-09-09 23:25 ` Samuel Thibault via Libc-alpha
2021-09-07 17:05 ` [PATCH htl v3 0/5] Rewrite THREAD_GSCOPE Adhemerval Zanella via Libc-alpha
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/libc/involved.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210914232909.7nzqwsnjf2cz2ml5@begin \
--to=libc-alpha@sourceware.org \
--cc=bug-hurd@gnu.org \
--cc=bugaevc@gmail.com \
--cc=samuel.thibault@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).