+2019-08-15 Florian Weimer <fweimer@redhat.com>
+
+ nptl: Move pthread_attr_destroy implementation into libc.
+ * nptl/Makefile (routines): Add pthread_attr_destroy.
+ (libpthread-routines): Remove pthread_attr_destroy.
+ * nptl/Versions (libpthread GLIBC_2.0): Remove
+ pthread_attr_destroy.
+ * nptl/pthread_attr_destroy.c (__pthread_attr_destroy): Check for
+ libc compat version instead of libpthread compat version.
+ * nptl/forward.c (pthread_attr_destroy): Remove definition.
+ * nptl/nptl-init.c (pthread_functions): Remove initializer for
+ ptr_pthread_attr_destroy.
+ * sysdeps/nptl/pthread-functions.h (struct pthread_functions):
+ Remove ptr_pthread_attr_destroy member.
+ * sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.17):
+ Remove pthread_attr_destroy.
+ * sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.0):
+ Likewise.
+ * sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.4):
+ Likewise.
+ * sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.29):
+ Likewise.
+ * sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.2):
+ Likewise.
+ * sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.0):
+ Likewise.
+ * sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.2):
+ Likewise.
+ * sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
+ (GLIBC_2.4): Likewise.
+ * sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
+ (GLIBC_2.0): Likewise.
+ * sysdeps/unix/sysv/linux/microblaze/libpthread.abilist
+ (GLIBC_2.18): Likewise.
+ * sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
+ (GLIBC_2.0): Likewise.
+ * sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
+ (GLIBC_2.0): Likewise.
+ * sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.21):
+ Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
+ (GLIBC_2.0): Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
+ (GLIBC_2.3): Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
+ (GLIBC_2.17): Likewise.
+ * sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
+ (GLIBC_2.27): Likewise.
+ * sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
+ (GLIBC_2.0): Likewise.
+ * sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
+ (GLIBC_2.2): Likewise.
+ * sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.2):
+ Likewise.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
+ (GLIBC_2.0): Likewise.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
+ (GLIBC_2.2): Likewise.
+ * sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
+ (GLIBC_2.2.5): Likewise.
+ * sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
+ (GLIBC_2.16): Likewise.
+
2019-08-15 Andreas Schwab <schwab@suse.de>
* sysdeps/i386/fpu/libm-test-ulps: Update.
routines = alloca_cutoff forward libc-lowlevellock libc-cancellation \
libc-cleanup libc_pthread_init libc_multiple_threads \
register-atfork pthread_atfork pthread_self thrd_current \
- thrd_equal thrd_sleep thrd_yield pthread_equal
+ thrd_equal thrd_sleep thrd_yield pthread_equal \
+ pthread_attr_destroy
shared-only-routines = forward
static-only-routines = pthread_atfork
pthread_getconcurrency pthread_setconcurrency \
pthread_getschedparam pthread_setschedparam \
pthread_setschedprio \
- pthread_attr_init pthread_attr_destroy \
+ pthread_attr_init \
pthread_attr_getdetachstate pthread_attr_setdetachstate \
pthread_attr_getguardsize pthread_attr_setguardsize \
pthread_attr_getschedparam pthread_attr_setschedparam \
pthread_getschedparam; pthread_setschedparam;
- pthread_attr_init; pthread_attr_destroy;
+ pthread_attr_init;
pthread_attr_getdetachstate; pthread_attr_setdetachstate;
pthread_attr_getschedparam; pthread_attr_setschedparam;
pthread_attr_getschedpolicy; pthread_attr_setschedpolicy;
FORWARD2 (name, int, decl, params, return defretval)
-FORWARD (pthread_attr_destroy, (pthread_attr_t *attr), (attr), 0)
-
#if SHLIB_COMPAT(libc, GLIBC_2_0, GLIBC_2_1)
FORWARD (__pthread_attr_init_2_0, (pthread_attr_t *attr), (attr), 0)
compat_symbol (libc, __pthread_attr_init_2_0, pthread_attr_init, GLIBC_2_0);
#ifdef SHARED
static const struct pthread_functions pthread_functions =
{
- .ptr_pthread_attr_destroy = __pthread_attr_destroy,
# if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_1)
.ptr___pthread_attr_init_2_0 = __pthread_attr_init_2_0,
# endif
iattr = (struct pthread_attr *) attr;
-#if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_1)
+#if SHLIB_COMPAT(libc, GLIBC_2_0, GLIBC_2_1)
/* In old struct pthread_attr, neither next nor cpuset are
present. */
if (__builtin_expect ((iattr->flags & ATTR_FLAG_OLDATTR), 0) == 0)
the thread functions. */
struct pthread_functions
{
- int (*ptr_pthread_attr_destroy) (pthread_attr_t *);
int (*ptr___pthread_attr_init_2_0) (pthread_attr_t *);
int (*ptr___pthread_attr_init_2_1) (pthread_attr_t *);
int (*ptr_pthread_attr_getdetachstate) (const pthread_attr_t *, int *);
GLIBC_2.17 pause F
GLIBC_2.17 pread F
GLIBC_2.17 pread64 F
-GLIBC_2.17 pthread_attr_destroy F
GLIBC_2.17 pthread_attr_getaffinity_np F
GLIBC_2.17 pthread_attr_getdetachstate F
GLIBC_2.17 pthread_attr_getguardsize F
GLIBC_2.0 open F
GLIBC_2.0 pause F
GLIBC_2.0 pthread_atfork F
-GLIBC_2.0 pthread_attr_destroy F
GLIBC_2.0 pthread_attr_getdetachstate F
GLIBC_2.0 pthread_attr_getinheritsched F
GLIBC_2.0 pthread_attr_getschedparam F
GLIBC_2.4 pause F
GLIBC_2.4 pread F
GLIBC_2.4 pread64 F
-GLIBC_2.4 pthread_attr_destroy F
GLIBC_2.4 pthread_attr_getaffinity_np F
GLIBC_2.4 pthread_attr_getdetachstate F
GLIBC_2.4 pthread_attr_getguardsize F
GLIBC_2.29 pause F
GLIBC_2.29 pread F
GLIBC_2.29 pread64 F
-GLIBC_2.29 pthread_attr_destroy F
GLIBC_2.29 pthread_attr_getaffinity_np F
GLIBC_2.29 pthread_attr_getdetachstate F
GLIBC_2.29 pthread_attr_getguardsize F
GLIBC_2.2 pread F
GLIBC_2.2 pread64 F
GLIBC_2.2 pthread_atfork F
-GLIBC_2.2 pthread_attr_destroy F
GLIBC_2.2 pthread_attr_getdetachstate F
GLIBC_2.2 pthread_attr_getguardsize F
GLIBC_2.2 pthread_attr_getinheritsched F
GLIBC_2.0 open F
GLIBC_2.0 pause F
GLIBC_2.0 pthread_atfork F
-GLIBC_2.0 pthread_attr_destroy F
GLIBC_2.0 pthread_attr_getdetachstate F
GLIBC_2.0 pthread_attr_getinheritsched F
GLIBC_2.0 pthread_attr_getschedparam F
GLIBC_2.2 pread F
GLIBC_2.2 pread64 F
GLIBC_2.2 pthread_atfork F
-GLIBC_2.2 pthread_attr_destroy F
GLIBC_2.2 pthread_attr_getdetachstate F
GLIBC_2.2 pthread_attr_getguardsize F
GLIBC_2.2 pthread_attr_getinheritsched F
GLIBC_2.4 pause F
GLIBC_2.4 pread F
GLIBC_2.4 pread64 F
-GLIBC_2.4 pthread_attr_destroy F
GLIBC_2.4 pthread_attr_getaffinity_np F
GLIBC_2.4 pthread_attr_getdetachstate F
GLIBC_2.4 pthread_attr_getguardsize F
GLIBC_2.0 open F
GLIBC_2.0 pause F
GLIBC_2.0 pthread_atfork F
-GLIBC_2.0 pthread_attr_destroy F
GLIBC_2.0 pthread_attr_getdetachstate F
GLIBC_2.0 pthread_attr_getinheritsched F
GLIBC_2.0 pthread_attr_getschedparam F
GLIBC_2.18 pause F
GLIBC_2.18 pread F
GLIBC_2.18 pread64 F
-GLIBC_2.18 pthread_attr_destroy F
GLIBC_2.18 pthread_attr_getaffinity_np F
GLIBC_2.18 pthread_attr_getdetachstate F
GLIBC_2.18 pthread_attr_getguardsize F
GLIBC_2.0 open F
GLIBC_2.0 pause F
GLIBC_2.0 pthread_atfork F
-GLIBC_2.0 pthread_attr_destroy F
GLIBC_2.0 pthread_attr_getdetachstate F
GLIBC_2.0 pthread_attr_getinheritsched F
GLIBC_2.0 pthread_attr_getschedparam F
GLIBC_2.0 open F
GLIBC_2.0 pause F
GLIBC_2.0 pthread_atfork F
-GLIBC_2.0 pthread_attr_destroy F
GLIBC_2.0 pthread_attr_getdetachstate F
GLIBC_2.0 pthread_attr_getinheritsched F
GLIBC_2.0 pthread_attr_getschedparam F
GLIBC_2.21 pause F
GLIBC_2.21 pread F
GLIBC_2.21 pread64 F
-GLIBC_2.21 pthread_attr_destroy F
GLIBC_2.21 pthread_attr_getaffinity_np F
GLIBC_2.21 pthread_attr_getdetachstate F
GLIBC_2.21 pthread_attr_getguardsize F
GLIBC_2.0 open F
GLIBC_2.0 pause F
GLIBC_2.0 pthread_atfork F
-GLIBC_2.0 pthread_attr_destroy F
GLIBC_2.0 pthread_attr_getdetachstate F
GLIBC_2.0 pthread_attr_getinheritsched F
GLIBC_2.0 pthread_attr_getschedparam F
GLIBC_2.3 pause F
GLIBC_2.3 pread F
GLIBC_2.3 pread64 F
-GLIBC_2.3 pthread_attr_destroy F
GLIBC_2.3 pthread_attr_getdetachstate F
GLIBC_2.3 pthread_attr_getguardsize F
GLIBC_2.3 pthread_attr_getinheritsched F
GLIBC_2.17 pause F
GLIBC_2.17 pread F
GLIBC_2.17 pread64 F
-GLIBC_2.17 pthread_attr_destroy F
GLIBC_2.17 pthread_attr_getaffinity_np F
GLIBC_2.17 pthread_attr_getdetachstate F
GLIBC_2.17 pthread_attr_getguardsize F
GLIBC_2.27 pause F
GLIBC_2.27 pread F
GLIBC_2.27 pread64 F
-GLIBC_2.27 pthread_attr_destroy F
GLIBC_2.27 pthread_attr_getaffinity_np F
GLIBC_2.27 pthread_attr_getdetachstate F
GLIBC_2.27 pthread_attr_getguardsize F
GLIBC_2.0 open F
GLIBC_2.0 pause F
GLIBC_2.0 pthread_atfork F
-GLIBC_2.0 pthread_attr_destroy F
GLIBC_2.0 pthread_attr_getdetachstate F
GLIBC_2.0 pthread_attr_getinheritsched F
GLIBC_2.0 pthread_attr_getschedparam F
GLIBC_2.2 pread F
GLIBC_2.2 pread64 F
GLIBC_2.2 pthread_atfork F
-GLIBC_2.2 pthread_attr_destroy F
GLIBC_2.2 pthread_attr_getdetachstate F
GLIBC_2.2 pthread_attr_getguardsize F
GLIBC_2.2 pthread_attr_getinheritsched F
GLIBC_2.2 pread F
GLIBC_2.2 pread64 F
GLIBC_2.2 pthread_atfork F
-GLIBC_2.2 pthread_attr_destroy F
GLIBC_2.2 pthread_attr_getdetachstate F
GLIBC_2.2 pthread_attr_getguardsize F
GLIBC_2.2 pthread_attr_getinheritsched F
GLIBC_2.0 open F
GLIBC_2.0 pause F
GLIBC_2.0 pthread_atfork F
-GLIBC_2.0 pthread_attr_destroy F
GLIBC_2.0 pthread_attr_getdetachstate F
GLIBC_2.0 pthread_attr_getinheritsched F
GLIBC_2.0 pthread_attr_getschedparam F
GLIBC_2.2 pread F
GLIBC_2.2 pread64 F
GLIBC_2.2 pthread_atfork F
-GLIBC_2.2 pthread_attr_destroy F
GLIBC_2.2 pthread_attr_getdetachstate F
GLIBC_2.2 pthread_attr_getguardsize F
GLIBC_2.2 pthread_attr_getinheritsched F
GLIBC_2.2.5 pread F
GLIBC_2.2.5 pread64 F
GLIBC_2.2.5 pthread_atfork F
-GLIBC_2.2.5 pthread_attr_destroy F
GLIBC_2.2.5 pthread_attr_getdetachstate F
GLIBC_2.2.5 pthread_attr_getguardsize F
GLIBC_2.2.5 pthread_attr_getinheritsched F
GLIBC_2.16 pause F
GLIBC_2.16 pread F
GLIBC_2.16 pread64 F
-GLIBC_2.16 pthread_attr_destroy F
GLIBC_2.16 pthread_attr_getaffinity_np F
GLIBC_2.16 pthread_attr_getdetachstate F
GLIBC_2.16 pthread_attr_getguardsize F