[packages/glibc] - rel 12; branch update; add libmvec_nonshared.a
arekm
arekm at pld-linux.org
Tue Jan 12 21:11:02 CET 2016
commit 110bcce8832ea5feacb3f0695b84a4d55d7d226b
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date: Tue Jan 12 21:10:57 2016 +0100
- rel 12; branch update; add libmvec_nonshared.a
glibc-git.patch | 129 +++++++++++++++++++++++++++++++++++++++++++++++++++-----
glibc.spec | 5 ++-
2 files changed, 123 insertions(+), 11 deletions(-)
---
diff --git a/glibc.spec b/glibc.spec
index b0c7599..b6128dc 100644
--- a/glibc.spec
+++ b/glibc.spec
@@ -41,7 +41,7 @@ Summary(tr.UTF-8): GNU libc
Summary(uk.UTF-8): GNU libc версії
Name: glibc
Version: %{core_version}
-Release: 11
+Release: 12
Epoch: 6
License: LGPL v2.1+
Group: Libraries
@@ -1840,6 +1840,9 @@ fi
%{_libdir}/libc.so
%{_libdir}/libpthread.so
# static-only libs
+%ifarch %{x8664} x32
+%{_libdir}/libmvec_nonshared.a
+%endif
%{_libdir}/libc_nonshared.a
%{_libdir}/libg.a
%{_libdir}/libieee.a
diff --git a/glibc-git.patch b/glibc-git.patch
index dc652b4..5e297da 100644
--- a/glibc-git.patch
+++ b/glibc-git.patch
@@ -1,8 +1,28 @@
diff --git a/ChangeLog b/ChangeLog
-index cb9124e..842a7c6 100644
+index cb9124e..f77829e 100644
--- a/ChangeLog
+++ b/ChangeLog
-@@ -1,3 +1,235 @@
+@@ -1,3 +1,255 @@
++2015-12-31 Aurelien Jarno <aurelien at aurel32.net>
++
++ * sysdeps/unix/sysv/linux/alpha/libc.abilist [GLIBC_2.22]: Move
++ to keep the file sorted.
++ * sysdeps/unix/sysv/linux/hppa/libc.abilist [GLIBC_2.22]: Likewise.
++
++2015-12-17 Paul E. Murphy <murphyp at linux.vnet.ibm.com>
++
++ [BZ #19174]
++ * sysdeps/powerpc/nptl/elide.h (__elide_lock): Fix usage of
++ .skip_lock_out_of_tbegin_retries.
++ * sysdeps/unix/sysv/linux/powerpc/elision-lock.c
++ (__lll_lock_elision): Likewise, and respect a value of
++ try_tbegin <= 0.
++
++2015-12-03 Andrew Senkevich <andrew.senkevich at intel.com>
++
++ * math/Makefile ($(inst_libdir)/libm.so): Corrected path to
++ libmvec_nonshared.a
++
+2015-11-27 Andrew Senkevich <andrew.senkevich at intel.com>
+
+ [BZ #19058]
@@ -239,7 +259,7 @@ index cb9124e..842a7c6 100644
* version.h (RELEASE): Set to "stable".
diff --git a/NEWS b/NEWS
-index 4c31de7..e100318 100644
+index 4c31de7..e1c1e58 100644
--- a/NEWS
+++ b/NEWS
@@ -5,6 +5,16 @@ See the end for copying conditions.
@@ -251,7 +271,7 @@ index 4c31de7..e100318 100644
+* The following bugs are resolved with this release:
+
+ 18589, 18743, 18778, 18781, 18787, 18796, 18870, 18887, 18921, 18928,
-+ 18969, 19018, 19058, 19178.
++ 18969, 19018, 19058, 19174, 19178.
+
+* The LD_POINTER_GUARD environment variable can no longer be used to
+ disable the pointer guard feature. It is always enabled.
@@ -956,7 +976,7 @@ index a39a94f..dc0fe30 100644
obstack_free (&weightpool, NULL);
diff --git a/math/Makefile b/math/Makefile
-index 6388bae..76f99fb 100644
+index 6388bae..2c9d72d 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -98,7 +98,7 @@ $(inst_libdir)/libm.so: $(common-objpfx)format.lds \
@@ -964,7 +984,7 @@ index 6388bae..76f99fb 100644
cat $<; \
echo 'GROUP ( $(slibdir)/libm.so$(libm.so-version) ' \
- 'AS_NEEDED ( $(slibdir)/libmvec.so$(libmvec.so-version) ) )' \
-+ 'AS_NEEDED ( $(slibdir)/libmvec_nonshared.a $(slibdir)/libmvec.so$(libmvec.so-version) ) )' \
++ 'AS_NEEDED ( $(libdir)/libmvec_nonshared.a $(slibdir)/libmvec.so$(libmvec.so-version) ) )' \
) > $@
endif
@@ -1684,7 +1704,7 @@ index 6509f5c..9edf056 100644
return true;
}
diff --git a/sysdeps/powerpc/nptl/elide.h b/sysdeps/powerpc/nptl/elide.h
-index 389f5a5..12171f4 100644
+index 389f5a5..2e1e443 100644
--- a/sysdeps/powerpc/nptl/elide.h
+++ b/sysdeps/powerpc/nptl/elide.h
@@ -23,67 +23,78 @@
@@ -1699,7 +1719,7 @@ index 389f5a5..12171f4 100644
+ otherwise. */
static inline bool
-__elide_lock (uint8_t *adapt_count, int is_lock_free)
-+__get_new_count (uint8_t *adapt_count)
++__get_new_count (uint8_t *adapt_count, int attempt)
{
- if (*adapt_count > 0)
+ /* A persistent failure indicates that a retry will probably
@@ -1744,7 +1764,7 @@ index 389f5a5..12171f4 100644
- return false;
+ /* Same logic as above, but for a number of temporary failures in a
+ a row. */
-+ else if (__elision_aconf.skip_lock_out_of_tbegin_retries > 0
++ else if (attempt <= 1 && __elision_aconf.skip_lock_out_of_tbegin_retries > 0
+ && __elision_aconf.try_tbegin > 0)
+ *adapt_count = __elision_aconf.skip_lock_out_of_tbegin_retries;
+ return true;
@@ -1797,7 +1817,7 @@ index 389f5a5..12171f4 100644
+ __builtin_tabort (_ABORT_LOCK_BUSY); \
+ } \
+ else \
-+ if (!__get_new_count(&adapt_count)) \
++ if (!__get_new_count (&adapt_count,i)) \
+ break; \
+ } \
+ ret; \
@@ -1830,6 +1850,30 @@ index 16cb9ad..59df2d7 100644
#include <shm-directory.h>
+diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist
+index 58c8b32..aa20e22 100644
+--- a/sysdeps/unix/sysv/linux/alpha/libc.abilist
++++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist
+@@ -1822,9 +1822,6 @@ GLIBC_2.17
+ GLIBC_2.18
+ GLIBC_2.18 A
+ __cxa_thread_atexit_impl F
+-GLIBC_2.22
+- GLIBC_2.22 A
+- fmemopen F
+ GLIBC_2.2
+ GLIBC_2.2 A
+ _IO_adjust_wcolumn F
+@@ -2015,6 +2012,9 @@ GLIBC_2.2.4
+ GLIBC_2.2.6
+ GLIBC_2.2.6 A
+ __nanosleep F
++GLIBC_2.22
++ GLIBC_2.22 A
++ fmemopen F
+ GLIBC_2.3
+ GLIBC_2.3 A
+ __ctype_b_loc F
diff --git a/sysdeps/unix/sysv/linux/hppa/bits/atomic.h b/sysdeps/unix/sysv/linux/hppa/bits/atomic.h
index abde83e..6e73504 100644
--- a/sysdeps/unix/sysv/linux/hppa/bits/atomic.h
@@ -1894,6 +1938,30 @@ index abde83e..6e73504 100644
})
# define atomic_compare_and_exchange_bool_acq(mem, newval, oldval) \
+diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
+index cf0ad90..224e1f3 100644
+--- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
++++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
+@@ -95,9 +95,6 @@ GLIBC_2.18
+ GLIBC_2.19
+ GLIBC_2.19 A
+ fanotify_mark F
+-GLIBC_2.22
+- GLIBC_2.22 A
+- fmemopen F
+ GLIBC_2.2
+ GLIBC_2.2 A
+ _Exit F
+@@ -1863,6 +1860,9 @@ GLIBC_2.2.4
+ GLIBC_2.2.6
+ GLIBC_2.2.6 A
+ __nanosleep F
++GLIBC_2.22
++ GLIBC_2.22 A
++ fmemopen F
+ GLIBC_2.3
+ GLIBC_2.3 A
+ __ctype_b_loc F
diff --git a/sysdeps/unix/sysv/linux/microblaze/sysdep.h b/sysdeps/unix/sysv/linux/microblaze/sysdep.h
index 83c0340..9d5c542 100644
--- a/sysdeps/unix/sysv/linux/microblaze/sysdep.h
@@ -1933,6 +2001,47 @@ index 6777123..ad8e31d 100644
return SYSCALL_CANCEL (openat, fd, file, oflag, mode);
}
libc_hidden_def (__OPENAT)
+diff --git a/sysdeps/unix/sysv/linux/powerpc/elision-lock.c b/sysdeps/unix/sysv/linux/powerpc/elision-lock.c
+index 7f9bcc2..c6731ca 100644
+--- a/sysdeps/unix/sysv/linux/powerpc/elision-lock.c
++++ b/sysdeps/unix/sysv/linux/powerpc/elision-lock.c
+@@ -72,8 +72,7 @@ __lll_lock_elision (int *lock, short *adapt_count, EXTRAARG int pshared)
+ goto use_lock;
+ }
+
+- int try_begin = aconf.try_tbegin;
+- while (1)
++ for (int i = aconf.try_tbegin; i > 0; i--)
+ {
+ if (__builtin_tbegin (0))
+ {
+@@ -87,21 +86,19 @@ __lll_lock_elision (int *lock, short *adapt_count, EXTRAARG int pshared)
+ /* A persistent failure indicates that a retry will probably
+ result in another failure. Use normal locking now and
+ for the next couple of calls. */
+- if (try_begin-- <= 0
+- || _TEXASRU_FAILURE_PERSISTENT (__builtin_get_texasru ()))
++ if (_TEXASRU_FAILURE_PERSISTENT (__builtin_get_texasru ()))
+ {
+ if (aconf.skip_lock_internal_abort > 0)
+ *adapt_count = aconf.skip_lock_internal_abort;
+ goto use_lock;
+ }
+- /* Same logic as above, but for for a number of temporary failures
+- in a row. */
+- else if (aconf.skip_lock_out_of_tbegin_retries > 0
+- && aconf.try_tbegin > 0)
+- *adapt_count = aconf.skip_lock_out_of_tbegin_retries;
+ }
+ }
+
++ /* Fall back to locks for a bit if retries have been exhausted */
++ if (aconf.try_tbegin > 0 && aconf.skip_lock_out_of_tbegin_retries > 0)
++ *adapt_count = aconf.skip_lock_out_of_tbegin_retries;
++
+ use_lock:
+ return LLL_LOCK ((*lock), pshared);
+ }
diff --git a/sysdeps/x86/fpu/bits/math-vector.h b/sysdeps/x86/fpu/bits/math-vector.h
index f9e798b..f3bfb86 100644
--- a/sysdeps/x86/fpu/bits/math-vector.h
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/glibc.git/commitdiff/110bcce8832ea5feacb3f0695b84a4d55d7d226b
More information about the pld-cvs-commit
mailing list