[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commits] r24862 - in /fsf/trunk/libc/ports: ChangeLog.ia64 sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h



Author: eglibc
Date: Thu Dec 26 00:02:23 2013
New Revision: 24862

Log:
Import glibc-mainline for 2013-12-26

Modified:
    fsf/trunk/libc/ports/ChangeLog.ia64
    fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h

Modified: fsf/trunk/libc/ports/ChangeLog.ia64
==============================================================================
--- fsf/trunk/libc/ports/ChangeLog.ia64 (original)
+++ fsf/trunk/libc/ports/ChangeLog.ia64 Thu Dec 26 00:02:23 2013
@@ -1,3 +1,17 @@
+2013-12-25  Mike Frysinger  <vapier@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h
+	(FUTEX_WAIT_REQUEUE_PI): Define.
+	(FUTEX_CMP_REQUEUE_PI): Likewise.
+	(lll_futex_wait_requeue_pi): Likewise.
+	(lll_futex_timed_wait_requeue_pi): Likewise.
+	(lll_futex_cmp_requeue_pi): Likewise.
+
+2013-12-25  Mike Frysinger  <vapier@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h
+	(lll_futex_timed_wait_bitset): Define.
+
 2013-12-24  Mike Frysinger  <vapier@xxxxxxxxxx>
 
 	* sysdeps/unix/sysv/linux/ia64/ioperm.c: Delete code behind #if 0.

Modified: fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h
==============================================================================
--- fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h (original)
+++ fsf/trunk/libc/ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h Thu Dec 26 00:02:23 2013
@@ -38,6 +38,8 @@
 #define FUTEX_TRYLOCK_PI	8
 #define FUTEX_WAIT_BITSET	9
 #define FUTEX_WAKE_BITSET	10
+#define FUTEX_WAIT_REQUEUE_PI	11
+#define FUTEX_CMP_REQUEUE_PI	12
 #define FUTEX_PRIVATE_FLAG	128
 #define FUTEX_CLOCK_REALTIME	256
 
@@ -89,6 +91,17 @@
    _r10 == -1 ? -_retval : _retval;					\
 })
 
+#define lll_futex_timed_wait_bitset(ftx, val, timespec, clockbit, private) \
+({									   \
+   int __op = FUTEX_WAIT_BITSET | (clockbit);				   \
+									   \
+   DO_INLINE_SYSCALL(futex, 4, (long) (ftx),				   \
+		     __lll_private_flag (__op, private),		   \
+		     (int) (val), (long) (timespec), NULL /* Unused.  */,  \
+		     FUTEX_BITSET_MATCH_ANY);				   \
+   _r10 == -1 ? -_retval : _retval;					   \
+})
+
 #define lll_futex_wake(ftx, nr, private)				\
 ({									\
    DO_INLINE_SYSCALL(futex, 3, (long) (ftx),				\
@@ -125,6 +138,29 @@
 		     (int) (nr_wake), (int) (nr_wake2), (long) (ftx2),	     \
 		     FUTEX_OP_CLEAR_WAKE_IF_GT_ONE);			     \
    _r10 == -1;								     \
+})
+
+/* Priority Inheritance support.  */
+#define lll_futex_wait_requeue_pi(futexp, val, mutex, private) \
+  lll_futex_timed_wait_requeue_pi (futexp, val, NULL, 0, mutex, private)
+
+#define lll_futex_timed_wait_requeue_pi(futexp, val, timespec, clockbit,      \
+					mutex, private)			      \
+({									      \
+   int __op = FUTEX_WAIT_REQUEUE_PI | (clockbit);			      \
+									      \
+   DO_INLINE_SYSCALL(futex, 5, (long) (futexp),				      \
+		     __lll_private_flag (__op, private),		      \
+		     (val), (timespec), mutex); 			      \
+   _r10 == -1;								      \
+})
+
+#define lll_futex_cmp_requeue_pi(futexp, nr_wake, nr_move, mutex, val, priv)  \
+({									      \
+   DO_INLINE_SYSCALL(futex, 6, (long) (futexp),				      \
+		     __lll_private_flag (FUTEX_CMP_REQUEUE_PI, priv),	      \
+		    (nr_wake), (nr_move), (mutex), (val));		      \
+   _r10 == -1 ? -_retval : _retval;					      \
 })
 
 

_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits