This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.18-700-gaa8e370


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  aa8e3704259df300dd56795f8ddcdfa61ede5696 (commit)
       via  5243e58568c693c892845aca6e25f7b6adc7f094 (commit)
      from  fe1a83aa1cbe166f8534925103c8d3a4f047f26c (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=aa8e3704259df300dd56795f8ddcdfa61ede5696

commit aa8e3704259df300dd56795f8ddcdfa61ede5696
Author: Mike Frysinger <vapier@gentoo.org>
Date:   Tue Dec 24 12:24:04 2013 +0000

    ia64: implement futex requeue pi support
    
    Used the s390 code as a guideline until all tests pass.
    
    Signed-off-by: Mike Frysinger <vapier@gentoo.org>

diff --git a/ports/ChangeLog.ia64 b/ports/ChangeLog.ia64
index c1f2035..34391c1 100644
--- a/ports/ChangeLog.ia64
+++ b/ports/ChangeLog.ia64
@@ -1,6 +1,15 @@
 2013-12-25  Mike Frysinger  <vapier@gentoo.org>
 
 	* 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@gentoo.org>
+
+	* sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h
 	(lll_futex_timed_wait_bitset): Define.
 
 2013-12-24  Mike Frysinger  <vapier@gentoo.org>
diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h b/ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h
index 90d8d81..5518b8a 100644
--- a/ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h
+++ b/ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h
@@ -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
 
@@ -138,6 +140,29 @@ while (0)
    _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;					      \
+})
+
 
 #define __lll_trylock(futex) \
   (atomic_compare_and_exchange_val_acq (futex, 1, 0) != 0)

http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=5243e58568c693c892845aca6e25f7b6adc7f094

commit 5243e58568c693c892845aca6e25f7b6adc7f094
Author: Mike Frysinger <vapier@gentoo.org>
Date:   Tue Dec 24 12:23:12 2013 +0000

    ia64: add lll_futex_timed_wait_bitset
    
    Signed-off-by: Mike Frysinger <vapier@gentoo.org>

diff --git a/ports/ChangeLog.ia64 b/ports/ChangeLog.ia64
index 0338047..c1f2035 100644
--- a/ports/ChangeLog.ia64
+++ b/ports/ChangeLog.ia64
@@ -1,3 +1,8 @@
+2013-12-25  Mike Frysinger  <vapier@gentoo.org>
+
+	* sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h
+	(lll_futex_timed_wait_bitset): Define.
+
 2013-12-24  Mike Frysinger  <vapier@gentoo.org>
 
 	* sysdeps/unix/sysv/linux/ia64/ioperm.c: Delete code behind #if 0.
diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h b/ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h
index cd36f95..90d8d81 100644
--- a/ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h
+++ b/ports/sysdeps/unix/sysv/linux/ia64/nptl/lowlevellock.h
@@ -89,6 +89,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),				\

-----------------------------------------------------------------------

Summary of changes:
 ports/ChangeLog.ia64                               |   14 ++++++++
 .../unix/sysv/linux/ia64/nptl/lowlevellock.h       |   36 ++++++++++++++++++++
 2 files changed, 50 insertions(+), 0 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]