[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commits] r24149 - in /fsf/trunk/libc: ./ nptl/ ports/ ports/sysdeps/unix/alpha/ posix/
- To: commits@xxxxxxxxxx
- Subject: [Commits] r24149 - in /fsf/trunk/libc: ./ nptl/ ports/ ports/sysdeps/unix/alpha/ posix/
- From: eglibc@xxxxxxxxxx
- Date: Wed, 02 Oct 2013 00:02:20 -0000
Author: eglibc
Date: Wed Oct 2 00:02:19 2013
New Revision: 24149
Log:
Import glibc-mainline for 2013-10-02
Modified:
fsf/trunk/libc/ChangeLog
fsf/trunk/libc/NEWS
fsf/trunk/libc/nptl/ChangeLog
fsf/trunk/libc/nptl/pthread_cond_broadcast.c
fsf/trunk/libc/nptl/pthread_cond_signal.c
fsf/trunk/libc/ports/ChangeLog.alpha
fsf/trunk/libc/ports/sysdeps/unix/alpha/sysdep.h
fsf/trunk/libc/posix/glob.c
Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Wed Oct 2 00:02:19 2013
@@ -431,6 +431,11 @@
on macro parameter name.
[!_SOFT_FLOAT && !__NO_FPRS__] (_FPU_SETCW): Likewise. Use
parentheses around reference to macro parameter.
+
+2013-09-04 Eric Blake <eblake@xxxxxxxxxx>
+
+ * posix/glob.c (next_brace_sub, prefix_array, collated_compare):
+ Use __THROWNL rather than __THROW on static functions.
2013-09-13 Richard Sandiford <richard@xxxxxxxxxxxxxxxx>
Modified: fsf/trunk/libc/NEWS
==============================================================================
--- fsf/trunk/libc/NEWS (original)
+++ fsf/trunk/libc/NEWS Wed Oct 2 00:02:19 2013
@@ -10,10 +10,10 @@
* The following bugs are resolved with this release:
13985, 14155, 14547, 14699, 15048, 15400, 15427, 15522, 15531, 15532,
- 15608, 15609, 15610, 15640, 15681, 15736, 15748, 15749, 15754, 15797,
- 15844, 15849, 15855, 15856, 15857, 15859, 15867, 15886, 15887, 15890,
- 15892, 15893, 15895, 15897, 15905, 15909, 15919, 15921, 15923, 15939,
- 15963, 15966.
+ 15608, 15609, 15610, 15640, 15681, 15736, 15748, 15749, 15754, 15760,
+ 15797, 15844, 15849, 15855, 15856, 15857, 15859, 15867, 15886, 15887,
+ 15890, 15892, 15893, 15895, 15897, 15905, 15909, 15919, 15921, 15923,
+ 15939, 15963, 15966, 15988.
* CVE-2012-4412 The strcoll implementation caches indices and rules for
large collation sequences to optimize multiple passes. This cache
Modified: fsf/trunk/libc/nptl/ChangeLog
==============================================================================
--- fsf/trunk/libc/nptl/ChangeLog (original)
+++ fsf/trunk/libc/nptl/ChangeLog Wed Oct 2 00:02:19 2013
@@ -1,3 +1,12 @@
+2013-10-01 Siddhesh Poyarekar <siddhesh@xxxxxxxxxx>
+
+ [BZ #15988]
+ * pthread_cond_broadcast.c (__pthread_cond_broadcast)
+ [lll_futex_cmp_requeue_pi && __ASSUME_REQUEUE_PI]: Use
+ USE_REQUEUE_PI.
+ * pthread_cond_signal.c (__pthread_cond_signal)
+ [lll_futex_cmd_requeue_pi && __ASSUME_REQUEUE_PI]: Likewise.
+
2013-09-27 Siddhesh Poyarekar <siddhesh@xxxxxxxxxx>
* sysdeps/pthread/bits/libc-lock.h [_LIBC && (!NOT_IN_libc ||
Modified: fsf/trunk/libc/nptl/pthread_cond_broadcast.c
==============================================================================
--- fsf/trunk/libc/nptl/pthread_cond_broadcast.c (original)
+++ fsf/trunk/libc/nptl/pthread_cond_broadcast.c Wed Oct 2 00:02:19 2013
@@ -63,10 +63,7 @@
#if (defined lll_futex_cmp_requeue_pi \
&& defined __ASSUME_REQUEUE_PI)
- int pi_flag = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_NP;
- pi_flag &= mut->__data.__kind;
-
- if (pi_flag == PTHREAD_MUTEX_PRIO_INHERIT_NP)
+ if (USE_REQUEUE_PI (mut))
{
if (lll_futex_cmp_requeue_pi (&cond->__data.__futex, 1, INT_MAX,
&mut->__data.__lock, futex_val,
Modified: fsf/trunk/libc/nptl/pthread_cond_signal.c
==============================================================================
--- fsf/trunk/libc/nptl/pthread_cond_signal.c (original)
+++ fsf/trunk/libc/nptl/pthread_cond_signal.c Wed Oct 2 00:02:19 2013
@@ -49,14 +49,9 @@
#if (defined lll_futex_cmp_requeue_pi \
&& defined __ASSUME_REQUEUE_PI)
- int pi_flag = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_NP;
pthread_mutex_t *mut = cond->__data.__mutex;
- /* Do not use requeue for pshared condvars. */
- if (mut != (void *) ~0l)
- pi_flag &= mut->__data.__kind;
-
- if (__builtin_expect (pi_flag == PTHREAD_MUTEX_PRIO_INHERIT_NP, 0)
+ if (USE_REQUEUE_PI (mut)
/* This can only really fail with a ENOSYS, since nobody can modify
futex while we have the cond_lock. */
&& lll_futex_cmp_requeue_pi (&cond->__data.__futex, 1, 0,
Modified: fsf/trunk/libc/ports/ChangeLog.alpha
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.alpha (original)
+++ fsf/trunk/libc/ports/ChangeLog.alpha Wed Oct 2 00:02:19 2013
@@ -1,3 +1,8 @@
+2013-10-01 Richard Henderson <rth@xxxxxxxxxx>
+
+ * sysdeps/unix/alpha/sysdep.h (PTR_MANGLE): Improve conditions under
+ which it is defined.
+
2013-09-20 Andreas Schwab <schwab@xxxxxxxxxxxxxx>
* sysdeps/alpha/alphaev67/ffs.S (__ffs): Define as hidden.
Modified: fsf/trunk/libc/ports/sysdeps/unix/alpha/sysdep.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/alpha/sysdep.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/alpha/sysdep.h Wed Oct 2 00:02:19 2013
@@ -343,53 +343,43 @@
: : inline_syscall_clobbers); \
_sc_ret = _sc_0, _sc_err = _sc_19; \
}
+#endif /* ASSEMBLER */
/* Pointer mangling support. Note that tls access is slow enough that
we don't deoptimize things by placing the pointer check value there. */
-#include <stdint.h>
-
-#if defined NOT_IN_libc && defined IS_IN_rtld
-# ifdef __ASSEMBLER__
+#ifdef __ASSEMBLER__
+# if defined NOT_IN_libc && defined IS_IN_rtld
# define PTR_MANGLE(dst, src, tmp) \
ldah tmp, __pointer_chk_guard_local($29) !gprelhigh; \
ldq tmp, __pointer_chk_guard_local(tmp) !gprellow; \
xor src, tmp, dst
# define PTR_MANGLE2(dst, src, tmp) \
xor src, tmp, dst
-# define PTR_DEMANGLE(dst, tmp) PTR_MANGLE(dst, dst, tmp)
-# define PTR_DEMANGLE2(dst, tmp) PTR_MANGLE2(dst, dst, tmp)
-# else
-extern uintptr_t __pointer_chk_guard_local attribute_relro attribute_hidden;
-# define PTR_MANGLE(var) \
- (var) = (__typeof (var)) ((uintptr_t) (var) ^ __pointer_chk_guard_local)
-# define PTR_DEMANGLE(var) PTR_MANGLE(var)
-# endif
-#elif defined PIC
-# ifdef __ASSEMBLER__
+# elif defined SHARED
# define PTR_MANGLE(dst, src, tmp) \
ldq tmp, __pointer_chk_guard; \
xor src, tmp, dst
-# define PTR_MANGLE2(dst, src, tmp) \
- xor src, tmp, dst
-# define PTR_DEMANGLE(dst, tmp) PTR_MANGLE(dst, dst, tmp)
-# define PTR_DEMANGLE2(dst, tmp) PTR_MANGLE2(dst, dst, tmp)
+# else
+# define PTR_MANGLE(dst, src, tmp) \
+ ldq tmp, __pointer_chk_guard_local; \
+ xor src, tmp, dst
+# endif
+# define PTR_MANGLE2(dst, src, tmp) \
+ xor src, tmp, dst
+# define PTR_DEMANGLE(dst, tmp) PTR_MANGLE(dst, dst, tmp)
+# define PTR_DEMANGLE2(dst, tmp) PTR_MANGLE2(dst, dst, tmp)
+#else
+# include <stdint.h>
+# if (defined NOT_IN_libc && defined IS_IN_rtld) \
+ || (!defined SHARED && (!defined NOT_IN_libc || defined IS_IN_libpthread))
+extern uintptr_t __pointer_chk_guard_local attribute_relro attribute_hidden;
+# define PTR_MANGLE(var) \
+ (var) = (__typeof (var)) ((uintptr_t) (var) ^ __pointer_chk_guard_local)
# else
extern const uintptr_t __pointer_chk_guard attribute_relro;
-# define PTR_MANGLE(var) \
+# define PTR_MANGLE(var) \
(var) = (__typeof(var)) ((uintptr_t) (var) ^ __pointer_chk_guard)
-# define PTR_DEMANGLE(var) PTR_MANGLE(var)
# endif
-#else
-/* There exists generic C code that assumes that PTR_MANGLE is always
- defined. When generating code for the static libc, we don't have
- __pointer_chk_guard defined. Nor is there any place that would
- initialize it if it were defined, so there's little point in doing
- anything more than nothing. */
-# ifndef __ASSEMBLER__
-# define PTR_MANGLE(var)
-# define PTR_DEMANGLE(var)
-# endif
-#endif
-
+# define PTR_DEMANGLE(var) PTR_MANGLE(var)
#endif /* ASSEMBLER */
Modified: fsf/trunk/libc/posix/glob.c
==============================================================================
--- fsf/trunk/libc/posix/glob.c (original)
+++ fsf/trunk/libc/posix/glob.c Wed Oct 2 00:02:19 2013
@@ -193,7 +193,7 @@
# define GET_LOGIN_NAME_MAX() (-1)
#endif
-static const char *next_brace_sub (const char *begin, int flags) __THROW;
+static const char *next_brace_sub (const char *begin, int flags) __THROWNL;
#endif /* !defined _LIBC || !defined GLOB_ONLY_P */
@@ -208,8 +208,8 @@
attribute_hidden;
#if !defined _LIBC || !defined GLOB_ONLY_P
-static int prefix_array (const char *prefix, char **array, size_t n) __THROW;
-static int collated_compare (const void *, const void *) __THROW;
+static int prefix_array (const char *prefix, char **array, size_t n) __THROWNL;
+static int collated_compare (const void *, const void *) __THROWNL;
/* Find the end of the sub-pattern in a brace expression. */
_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits