[3/4] nptl: Reduce the GLIBC_PRIVATE ABI
Checks
Context |
Check |
Description |
dj/TryBot-apply_patch |
success
|
Patch applied to master at the time it was sent
|
Commit Message
The remaining symbols are mostly used by libthread_db.
__pthread_get_minstack has to remain exported even though unused.
---
nptl/Versions | 42 ----------------------------------
nptl/pthread_barrier_init.c | 5 ++--
nptl/pthread_barrier_wait.c | 5 ++--
nptl/pthread_cond_wait.c | 5 ++--
nptl/pthread_mutex_timedlock.c | 5 ++--
nptl/pthread_testcancel.c | 5 ++--
6 files changed, 15 insertions(+), 52 deletions(-)
Comments
On 06/07/2021 14:22, Florian Weimer via Libc-alpha wrote:
> The remaining symbols are mostly used by libthread_db.
> __pthread_get_minstack has to remain exported even though unused.
LGTM, thanks.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
> ---
> nptl/Versions | 42 ----------------------------------
> nptl/pthread_barrier_init.c | 5 ++--
> nptl/pthread_barrier_wait.c | 5 ++--
> nptl/pthread_cond_wait.c | 5 ++--
> nptl/pthread_mutex_timedlock.c | 5 ++--
> nptl/pthread_testcancel.c | 5 ++--
> 6 files changed, 15 insertions(+), 52 deletions(-)
>
> diff --git a/nptl/Versions b/nptl/Versions
> index 0a1c75509a..2a75f013f2 100644
> --- a/nptl/Versions
> +++ b/nptl/Versions
> @@ -379,59 +379,17 @@ libc {
> tss_set;
> }
> GLIBC_PRIVATE {
> - __default_pthread_attr;
> - __default_pthread_attr_lock;
> - __futex_abstimed_wait64;
> - __futex_abstimed_wait_cancelable64;
> - __init_sched_fifo_prio;
> __libc_alloca_cutoff;
> - __libc_cleanup_pop_restore;
> - __libc_cleanup_push_defer;
> - __libc_dl_error_tsd;
> - __libc_multiple_threads;
> - __lll_clocklock_elision;
> - __lll_lock_elision;
> - __lll_lock_wait;
> __lll_lock_wait_private;
> - __lll_trylock_elision;
> - __lll_unlock_elision;
> - __mutex_aconf;
> __nptl_create_event;
> - __nptl_deallocate_stack;
> - __nptl_deallocate_tsd;
> __nptl_death_event;
> - __nptl_free_tcb;
> __nptl_last_event;
> __nptl_nthreads;
> __nptl_rtld_global;
> - __nptl_setxid_sighandler;
> - __nptl_stack_list_add;
> - __nptl_stack_list_del;
> __nptl_threads_events;
> __nptl_version;
> - __pthread_attr_copy;
> - __pthread_attr_destroy;
> - __pthread_attr_init;
> - __pthread_attr_setaffinity_np;
> - __pthread_attr_setsigmask_internal;
> - __pthread_barrier_init;
> - __pthread_barrier_wait;
> - __pthread_cleanup_pop;
> - __pthread_cleanup_push;
> - __pthread_cleanup_upto;
> - __pthread_current_priority;
> - __pthread_disable_asynccancel;
> - __pthread_enable_asynccancel;
> - __pthread_force_elision;
> __pthread_get_minstack;
> __pthread_keys;
> - __pthread_mutex_unlock_usercnt;
> - __pthread_setcancelstate;
> - __pthread_testcancel;
> - __pthread_tpp_change_priority;
> - __pthread_unwind;
> - __sched_fifo_max_prio;
> - __sched_fifo_min_prio;
> _thread_db___nptl_last_event;
> _thread_db___nptl_nthreads;
> _thread_db___nptl_rtld_global;
Ok.
> diff --git a/nptl/pthread_barrier_init.c b/nptl/pthread_barrier_init.c
> index 3a13d2a756..4aa3b8c0d9 100644
> --- a/nptl/pthread_barrier_init.c
> +++ b/nptl/pthread_barrier_init.c
> @@ -63,9 +63,10 @@ ___pthread_barrier_init (pthread_barrier_t *barrier,
> }
> versioned_symbol (libc, ___pthread_barrier_init, pthread_barrier_init,
> GLIBC_2_34);
> -versioned_symbol (libc, ___pthread_barrier_init, __pthread_barrier_init,
> - GLIBC_PRIVATE);
> libc_hidden_ver (___pthread_barrier_init, __pthread_barrier_init)
> +#ifndef SHARED
> +strong_alias (___pthread_barrier_init, __pthread_barrier_init)
> +#endif
>
> #if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_2, GLIBC_2_34)
> compat_symbol (libpthread, ___pthread_barrier_init, pthread_barrier_init,
Ok.
> diff --git a/nptl/pthread_barrier_wait.c b/nptl/pthread_barrier_wait.c
> index 4f8abe16bb..10b68c1c35 100644
> --- a/nptl/pthread_barrier_wait.c
> +++ b/nptl/pthread_barrier_wait.c
> @@ -223,9 +223,10 @@ ___pthread_barrier_wait (pthread_barrier_t *barrier)
> }
> versioned_symbol (libc, ___pthread_barrier_wait, pthread_barrier_wait,
> GLIBC_2_34);
> -versioned_symbol (libc, ___pthread_barrier_wait, __pthread_barrier_wait,
> - GLIBC_PRIVATE);
> libc_hidden_ver (___pthread_barrier_wait, __pthread_barrier_wait)
> +#ifndef SHARED
> +strong_alias (___pthread_barrier_wait, __pthread_barrier_wait)
> +#endif
>
> #if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_2, GLIBC_2_34)
> compat_symbol (libpthread, ___pthread_barrier_wait, pthread_barrier_wait,
Ok.
> diff --git a/nptl/pthread_cond_wait.c b/nptl/pthread_cond_wait.c
> index daba8600fe..dc8c511f1a 100644
> --- a/nptl/pthread_cond_wait.c
> +++ b/nptl/pthread_cond_wait.c
> @@ -699,9 +699,10 @@ ___pthread_cond_clockwait (pthread_cond_t *cond, pthread_mutex_t *mutex,
> return __pthread_cond_clockwait64 (cond, mutex, clockid, &ts64);
> }
> #endif /* __TIMESIZE == 64 */
> -versioned_symbol (libc, ___pthread_cond_clockwait,
> - __pthread_cond_clockwait, GLIBC_PRIVATE);
> libc_hidden_ver (___pthread_cond_clockwait, __pthread_cond_clockwait)
> +#ifndef SHARED
> +strong_alias (___pthread_cond_clockwait, __pthread_cond_clockwait)
> +#endif
> versioned_symbol (libc, ___pthread_cond_clockwait,
> pthread_cond_clockwait, GLIBC_2_34);
> #if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_30, GLIBC_2_34)
Ok.
> diff --git a/nptl/pthread_mutex_timedlock.c b/nptl/pthread_mutex_timedlock.c
> index 5afd6222d6..11ad7005d0 100644
> --- a/nptl/pthread_mutex_timedlock.c
> +++ b/nptl/pthread_mutex_timedlock.c
> @@ -598,9 +598,10 @@ ___pthread_mutex_clocklock (pthread_mutex_t *mutex,
> return ___pthread_mutex_clocklock64 (mutex, clockid, &ts64);
> }
> #endif /* __TIMESPEC64 != 64 */
> -versioned_symbol (libc, ___pthread_mutex_clocklock,
> - __pthread_mutex_clocklock, GLIBC_PRIVATE);
> libc_hidden_ver (___pthread_mutex_clocklock, __pthread_mutex_clocklock)
> +#ifndef SHARED
> +strong_alias (___pthread_mutex_clocklock, __pthread_mutex_clocklock)
> +#endif
> versioned_symbol (libc, ___pthread_mutex_clocklock,
> pthread_mutex_clocklock, GLIBC_2_34);
> #if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_30, GLIBC_2_34)
Ok.
> diff --git a/nptl/pthread_testcancel.c b/nptl/pthread_testcancel.c
> index 920374643a..31185d89f2 100644
> --- a/nptl/pthread_testcancel.c
> +++ b/nptl/pthread_testcancel.c
> @@ -35,9 +35,10 @@ ___pthread_testcancel (void)
> }
> }
> versioned_symbol (libc, ___pthread_testcancel, pthread_testcancel, GLIBC_2_34);
> -versioned_symbol (libc, ___pthread_testcancel, __pthread_testcancel,
> - GLIBC_PRIVATE);
> libc_hidden_ver (___pthread_testcancel, __pthread_testcancel)
> +#ifndef SHARED
> +strong_alias (___pthread_testcancel, __pthread_testcancel)
> +#endif
>
> #if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_0, GLIBC_2_34)
> compat_symbol (libc, ___pthread_testcancel, pthread_testcancel, GLIBC_2_0);
>
Ok.
@@ -379,59 +379,17 @@ libc {
tss_set;
}
GLIBC_PRIVATE {
- __default_pthread_attr;
- __default_pthread_attr_lock;
- __futex_abstimed_wait64;
- __futex_abstimed_wait_cancelable64;
- __init_sched_fifo_prio;
__libc_alloca_cutoff;
- __libc_cleanup_pop_restore;
- __libc_cleanup_push_defer;
- __libc_dl_error_tsd;
- __libc_multiple_threads;
- __lll_clocklock_elision;
- __lll_lock_elision;
- __lll_lock_wait;
__lll_lock_wait_private;
- __lll_trylock_elision;
- __lll_unlock_elision;
- __mutex_aconf;
__nptl_create_event;
- __nptl_deallocate_stack;
- __nptl_deallocate_tsd;
__nptl_death_event;
- __nptl_free_tcb;
__nptl_last_event;
__nptl_nthreads;
__nptl_rtld_global;
- __nptl_setxid_sighandler;
- __nptl_stack_list_add;
- __nptl_stack_list_del;
__nptl_threads_events;
__nptl_version;
- __pthread_attr_copy;
- __pthread_attr_destroy;
- __pthread_attr_init;
- __pthread_attr_setaffinity_np;
- __pthread_attr_setsigmask_internal;
- __pthread_barrier_init;
- __pthread_barrier_wait;
- __pthread_cleanup_pop;
- __pthread_cleanup_push;
- __pthread_cleanup_upto;
- __pthread_current_priority;
- __pthread_disable_asynccancel;
- __pthread_enable_asynccancel;
- __pthread_force_elision;
__pthread_get_minstack;
__pthread_keys;
- __pthread_mutex_unlock_usercnt;
- __pthread_setcancelstate;
- __pthread_testcancel;
- __pthread_tpp_change_priority;
- __pthread_unwind;
- __sched_fifo_max_prio;
- __sched_fifo_min_prio;
_thread_db___nptl_last_event;
_thread_db___nptl_nthreads;
_thread_db___nptl_rtld_global;
@@ -63,9 +63,10 @@ ___pthread_barrier_init (pthread_barrier_t *barrier,
}
versioned_symbol (libc, ___pthread_barrier_init, pthread_barrier_init,
GLIBC_2_34);
-versioned_symbol (libc, ___pthread_barrier_init, __pthread_barrier_init,
- GLIBC_PRIVATE);
libc_hidden_ver (___pthread_barrier_init, __pthread_barrier_init)
+#ifndef SHARED
+strong_alias (___pthread_barrier_init, __pthread_barrier_init)
+#endif
#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_2, GLIBC_2_34)
compat_symbol (libpthread, ___pthread_barrier_init, pthread_barrier_init,
@@ -223,9 +223,10 @@ ___pthread_barrier_wait (pthread_barrier_t *barrier)
}
versioned_symbol (libc, ___pthread_barrier_wait, pthread_barrier_wait,
GLIBC_2_34);
-versioned_symbol (libc, ___pthread_barrier_wait, __pthread_barrier_wait,
- GLIBC_PRIVATE);
libc_hidden_ver (___pthread_barrier_wait, __pthread_barrier_wait)
+#ifndef SHARED
+strong_alias (___pthread_barrier_wait, __pthread_barrier_wait)
+#endif
#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_2, GLIBC_2_34)
compat_symbol (libpthread, ___pthread_barrier_wait, pthread_barrier_wait,
@@ -699,9 +699,10 @@ ___pthread_cond_clockwait (pthread_cond_t *cond, pthread_mutex_t *mutex,
return __pthread_cond_clockwait64 (cond, mutex, clockid, &ts64);
}
#endif /* __TIMESIZE == 64 */
-versioned_symbol (libc, ___pthread_cond_clockwait,
- __pthread_cond_clockwait, GLIBC_PRIVATE);
libc_hidden_ver (___pthread_cond_clockwait, __pthread_cond_clockwait)
+#ifndef SHARED
+strong_alias (___pthread_cond_clockwait, __pthread_cond_clockwait)
+#endif
versioned_symbol (libc, ___pthread_cond_clockwait,
pthread_cond_clockwait, GLIBC_2_34);
#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_30, GLIBC_2_34)
@@ -598,9 +598,10 @@ ___pthread_mutex_clocklock (pthread_mutex_t *mutex,
return ___pthread_mutex_clocklock64 (mutex, clockid, &ts64);
}
#endif /* __TIMESPEC64 != 64 */
-versioned_symbol (libc, ___pthread_mutex_clocklock,
- __pthread_mutex_clocklock, GLIBC_PRIVATE);
libc_hidden_ver (___pthread_mutex_clocklock, __pthread_mutex_clocklock)
+#ifndef SHARED
+strong_alias (___pthread_mutex_clocklock, __pthread_mutex_clocklock)
+#endif
versioned_symbol (libc, ___pthread_mutex_clocklock,
pthread_mutex_clocklock, GLIBC_2_34);
#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_30, GLIBC_2_34)
@@ -35,9 +35,10 @@ ___pthread_testcancel (void)
}
}
versioned_symbol (libc, ___pthread_testcancel, pthread_testcancel, GLIBC_2_34);
-versioned_symbol (libc, ___pthread_testcancel, __pthread_testcancel,
- GLIBC_PRIVATE);
libc_hidden_ver (___pthread_testcancel, __pthread_testcancel)
+#ifndef SHARED
+strong_alias (___pthread_testcancel, __pthread_testcancel)
+#endif
#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_0, GLIBC_2_34)
compat_symbol (libc, ___pthread_testcancel, pthread_testcancel, GLIBC_2_0);