[glibc] 01/01: debian/patches/kfreebsd/local-sysdeps.diff, local-fbtl.diff: update to revision 6083 (from glibc-bsd).
This is an automated email from the git hooks/post-receive script.
aurel32 pushed a commit to branch glibc-2.24
in repository glibc.
commit e0e645e1fdb7cbe5f3e8ceefd4b2a3b5194a7f2d
Author: Aurelien Jarno <aurelien@aurel32.net>
Date: Wed Jul 6 23:38:32 2016 +0200
debian/patches/kfreebsd/local-sysdeps.diff, local-fbtl.diff: update to revision 6083 (from glibc-bsd).
---
debian/changelog | 2 +
debian/patches/kfreebsd/local-fbtl.diff | 67 +++++++++++++-----------------
debian/patches/kfreebsd/local-sysdeps.diff | 44 ++++++++++++++------
3 files changed, 62 insertions(+), 51 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index af6ef7b..9acc43b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -16,6 +16,8 @@ glibc (2.23.90+20160507.87523e9-2) UNRELEASED; urgency=medium
and an explanation.
* debian/testsuite-xfail-debian.mk: do not allow math/test-fenv to
fail now that we do not have Loongson 2 buildds anymore.
+ * debian/patches/kfreebsd/local-sysdeps.diff, local-fbtl.diff:
+ update to revision 6083 (from glibc-bsd).
-- Aurelien Jarno <aurel32@debian.org> Tue, 05 Jul 2016 20:50:17 +0200
diff --git a/debian/patches/kfreebsd/local-fbtl.diff b/debian/patches/kfreebsd/local-fbtl.diff
index 173c3ac..01a6eb6 100644
--- a/debian/patches/kfreebsd/local-fbtl.diff
+++ b/debian/patches/kfreebsd/local-fbtl.diff
@@ -25799,7 +25799,7 @@
+strong_alias (__pthread_mutex_trylock, pthread_mutex_trylock)
--- /dev/null
+++ b/fbtl/pthread_mutex_unlock.c
-@@ -0,0 +1,301 @@
+@@ -0,0 +1,312 @@
+/* Copyright (C) 2002-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
@@ -26018,20 +26018,31 @@
+ /* One less user. */
+ --mutex->__data.__nusers;
+
-+ /* Unlock. */
-+ if ((mutex->__data.__lock & FUTEX_WAITERS) != 0
-+ || atomic_compare_and_exchange_bool_rel (&mutex->__data.__lock, 0,
-+ THREAD_GETMEM (THREAD_SELF,
-+ tid)))
++ /* Unlock. Load all necessary mutex data before releasing the mutex
++ to not violate the mutex destruction requirements (see
++ lll_unlock). */
++ int robust = mutex->__data.__kind & PTHREAD_MUTEX_ROBUST_NORMAL_NP;
++ int private = (robust
++ ? PTHREAD_ROBUST_MUTEX_PSHARED (mutex)
++ : PTHREAD_MUTEX_PSHARED (mutex));
++ /* Unlock the mutex using a CAS unless there are futex waiters or our
++ TID is not the value of __lock anymore, in which case we let the
++ kernel take care of the situation. Use release MO in the CAS to
++ synchronize with acquire MO in lock acquisitions. */
++ int l = atomic_load_relaxed (&mutex->__data.__lock);
++ do
+ {
-+ int robust = mutex->__data.__kind & PTHREAD_MUTEX_ROBUST_NORMAL_NP;
-+ int private = (robust
-+ ? PTHREAD_ROBUST_MUTEX_PSHARED (mutex)
-+ : PTHREAD_MUTEX_PSHARED (mutex));
-+ INTERNAL_SYSCALL_DECL (__err);
-+ INTERNAL_SYSCALL (futex, __err, 2, &mutex->__data.__lock,
-+ __lll_private_flag (FUTEX_UNLOCK_PI, private));
++ if (((l & FUTEX_WAITERS) != 0)
++ || (l != THREAD_GETMEM (THREAD_SELF, tid)))
++ {
++ INTERNAL_SYSCALL_DECL (__err);
++ INTERNAL_SYSCALL (futex, __err, 2, &mutex->__data.__lock,
++ __lll_private_flag (FUTEX_UNLOCK_PI, private));
++ break;
++ }
+ }
++ while (!atomic_compare_exchange_weak_release (&mutex->__data.__lock,
++ &l, 0));
+
+ THREAD_SETMEM (THREAD_SELF, robust_head.list_op_pending, NULL);
+ break;
@@ -30410,7 +30421,7 @@
+#endif
--- /dev/null
+++ b/fbtl/sysdeps/i386/tls.h
-@@ -0,0 +1,471 @@
+@@ -0,0 +1,459 @@
+/* Definition for thread-local data handling. nptl/i386 version.
+ Copyright (C) 2002-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
@@ -30441,19 +30452,7 @@
+# include <sysdep.h>
+# include <libc-internal.h>
+# include <kernel-features.h>
-+
-+
-+/* Type for the dtv. */
-+typedef union dtv
-+{
-+ size_t counter;
-+ struct
-+ {
-+ void *val;
-+ bool is_static;
-+ } pointer;
-+} dtv_t;
-+
++# include <dl-dtv.h>
+
+typedef struct
+{
@@ -35944,7 +35943,7 @@
+TCB_PTHREAD_CANCELED PTHREAD_CANCELED
--- /dev/null
+++ b/fbtl/sysdeps/x86_64/tls.h
-@@ -0,0 +1,389 @@
+@@ -0,0 +1,379 @@
+/* Definition for thread-local data handling. nptl/x86_64 version.
+ Copyright (C) 2002-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
@@ -35975,6 +35974,7 @@
+# include <sysdep.h>
+# include <libc-internal.h>
+# include <kernel-features.h>
++# include <dl-dtv.h>
+
+/* Replacement type for __m128 since this file is included by ld.so,
+ which is compiled with -mno-sse. It must not change the alignment
@@ -35985,17 +35985,6 @@
+} __128bits;
+
+
-+/* Type for the dtv. */
-+typedef union dtv
-+{
-+ size_t counter;
-+ struct
-+ {
-+ void *val;
-+ bool is_static;
-+ } pointer;
-+} dtv_t;
-+
+
+typedef struct
+{
diff --git a/debian/patches/kfreebsd/local-sysdeps.diff b/debian/patches/kfreebsd/local-sysdeps.diff
index ebd77a4..9d8a6d4 100644
--- a/debian/patches/kfreebsd/local-sysdeps.diff
+++ b/debian/patches/kfreebsd/local-sysdeps.diff
@@ -1200,7 +1200,7 @@
+#endif
--- /dev/null
+++ b/sysdeps/unix/bsd/bsd4.4/kfreebsd/bits/in.h
-@@ -0,0 +1,308 @@
+@@ -0,0 +1,310 @@
+/* Copyright (C) 1997, 2000, 2002 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
@@ -1225,6 +1225,8 @@
+# error "Never use <bits/in.h> directly; include <netinet/in.h> instead."
+#endif
+
++/* This is the FreeBSD version, do not assume a linux-based kernel. */
++#define __USE_KERNEL_IPV6_DEFS 0
+
+/* Link numbers. */
+#define IMPLINK_IP 155
@@ -9252,7 +9254,7 @@
+#endif
--- /dev/null
+++ b/sysdeps/unix/bsd/bsd4.4/kfreebsd/fbtl/lowlevellock.h
-@@ -0,0 +1,167 @@
+@@ -0,0 +1,168 @@
+/* Copyright (C) 2002-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
@@ -9383,9 +9385,10 @@
+#define __lll_unlock(futex, private) \
+ (void) \
+ ({ int *__futex = (futex); \
++ int __private = (private); \
+ int __oldval = atomic_exchange_rel (__futex, 0); \
+ if (__builtin_expect (__oldval > 1, 0)) \
-+ lll_futex_wake (__futex, 1, private); \
++ lll_futex_wake (__futex, 1, __private); \
+ })
+
+#define lll_unlock(futex, private) __lll_unlock(&(futex), private)
@@ -10671,7 +10674,7 @@
+}
--- /dev/null
+++ b/sysdeps/unix/bsd/bsd4.4/kfreebsd/fbtl/sem_post.c
-@@ -0,0 +1,80 @@
+@@ -0,0 +1,79 @@
+/* sem_post -- post to a POSIX semaphore. Generic futex-using version.
+ Copyright (C) 2003-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
@@ -10705,17 +10708,16 @@
+{
+ struct new_sem *isem = (struct new_sem *) sem;
+
-+ __typeof (isem->value) cur;
++ __typeof (isem->value) cur = atomic_load_relaxed(&isem->value);
+ do
+ {
-+ cur = isem->value;
-+ if (isem->value == SEM_VALUE_MAX)
++ if (cur == SEM_VALUE_MAX)
+ {
+ __set_errno (EOVERFLOW);
+ return -1;
+ }
+ }
-+ while (atomic_compare_and_exchange_bool_rel (&isem->value, cur + 1, cur));
++ while (!atomic_compare_exchange_weak_release(&isem->value, &cur, cur + 1));
+
+ atomic_full_barrier ();
+ if (isem->nwaiters > 0)
@@ -15408,7 +15410,7 @@
+GLIBC_2.3 getaddrinfo_a F
--- /dev/null
+++ b/sysdeps/unix/bsd/bsd4.4/kfreebsd/i386/libc.abilist
-@@ -0,0 +1,2194 @@
+@@ -0,0 +1,2196 @@
+GLIBC_2.10 GLIBC_2.10 A
+GLIBC_2.10 __cxa_at_quick_exit F
+GLIBC_2.10 __posix_getopt F
@@ -15505,6 +15507,8 @@
+GLIBC_2.23 fts64_open F
+GLIBC_2.23 fts64_read F
+GLIBC_2.23 fts64_set F
++GLIBC_2.24 GLIBC_2.24 A
++GLIBC_2.24 quick_exit F
+GLIBC_2.3 GLIBC_2.3 A
+GLIBC_2.3 _Exit F
+GLIBC_2.3 _IO_2_1_stderr_ D 0x9c
@@ -17631,7 +17635,7 @@
+GLIBC_2.3.4 dlmopen F
--- /dev/null
+++ b/sysdeps/unix/bsd/bsd4.4/kfreebsd/i386/libm.abilist
-@@ -0,0 +1,409 @@
+@@ -0,0 +1,416 @@
+GLIBC_2.15 GLIBC_2.15 A
+GLIBC_2.15 __acos_finite F
+GLIBC_2.15 __acosf_finite F
@@ -17723,6 +17727,13 @@
+GLIBC_2.23 lgamma F
+GLIBC_2.23 lgammaf F
+GLIBC_2.23 lgammal F
++GLIBC_2.24 GLIBC_2.24 A
++GLIBC_2.24 nextdown F
++GLIBC_2.24 nextdownf F
++GLIBC_2.24 nextdownl F
++GLIBC_2.24 nextup F
++GLIBC_2.24 nextupf F
++GLIBC_2.24 nextupl F
+GLIBC_2.3 GLIBC_2.3 A
+GLIBC_2.3 _LIB_VERSION D 0x4
+GLIBC_2.3 __clog10 F
@@ -32798,7 +32809,7 @@
+GLIBC_2.3 getaddrinfo_a F
--- /dev/null
+++ b/sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/libc.abilist
-@@ -0,0 +1,2142 @@
+@@ -0,0 +1,2144 @@
+GLIBC_2.10 GLIBC_2.10 A
+GLIBC_2.10 __cxa_at_quick_exit F
+GLIBC_2.10 __posix_getopt F
@@ -32897,6 +32908,8 @@
+GLIBC_2.23 fts64_open F
+GLIBC_2.23 fts64_read F
+GLIBC_2.23 fts64_set F
++GLIBC_2.24 GLIBC_2.24 A
++GLIBC_2.24 quick_exit F
+GLIBC_2.3 GLIBC_2.3 A
+GLIBC_2.3 _Exit F
+GLIBC_2.3 _IO_2_1_stderr_ D 0xe0
@@ -34969,7 +34982,7 @@
+GLIBC_2.3.4 dlmopen F
--- /dev/null
+++ b/sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/libm.abilist
-@@ -0,0 +1,407 @@
+@@ -0,0 +1,414 @@
+GLIBC_2.15 GLIBC_2.15 A
+GLIBC_2.15 __acos_finite F
+GLIBC_2.15 __acosf_finite F
@@ -35061,6 +35074,13 @@
+GLIBC_2.23 lgamma F
+GLIBC_2.23 lgammaf F
+GLIBC_2.23 lgammal F
++GLIBC_2.24 GLIBC_2.24 A
++GLIBC_2.24 nextdown F
++GLIBC_2.24 nextdownf F
++GLIBC_2.24 nextdownl F
++GLIBC_2.24 nextup F
++GLIBC_2.24 nextupf F
++GLIBC_2.24 nextupl F
+GLIBC_2.3 GLIBC_2.3 A
+GLIBC_2.3 _LIB_VERSION D 0x4
+GLIBC_2.3 __clog10 F
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-glibc/glibc.git
Reply to: