unofficial mirror of libc-alpha@sourceware.org
 help / color / mirror / Atom feed
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

  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).