summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ports/ChangeLog.alpha5
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/nptl/lowlevellock.h13
2 files changed, 18 insertions, 0 deletions
diff --git a/ports/ChangeLog.alpha b/ports/ChangeLog.alpha
index 34cb0a82ce..9f74a64ecf 100644
--- a/ports/ChangeLog.alpha
+++ b/ports/ChangeLog.alpha
@@ -1,3 +1,8 @@
+2013-01-02 Richard Henderson <rth@redhat.com>
+
+ * sysdeps/unix/sysv/linux/alpha/nptl/lowlevellock.h
+ (lll_futex_timed_wait_bitset): New.
+
2013-01-01 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/alpha/bits/termios.h: Reformat copyright
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/lowlevellock.h b/ports/sysdeps/unix/sysv/linux/alpha/nptl/lowlevellock.h
index 0ef2e7fd38..1d4b32848b 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/nptl/lowlevellock.h
+++ b/ports/sysdeps/unix/sysv/linux/alpha/nptl/lowlevellock.h
@@ -78,6 +78,19 @@
#define lll_futex_wait(futexp, val, private) \
lll_futex_timed_wait (futexp, val, NULL, private)
+#define lll_futex_timed_wait_bitset(futexp, val, timespec, clockbit, private) \
+ ({ \
+ INTERNAL_SYSCALL_DECL (__err); \
+ long int __ret; \
+ int __op = FUTEX_WAIT_BITSET | clockbit; \
+ \
+ __ret = INTERNAL_SYSCALL (futex, __err, 6, (futexp), \
+ __lll_private_flag (__op, private), \
+ (val), (timespec), NULL /* Unused. */, \
+ FUTEX_BITSET_MATCH_ANY); \
+ __ret; \
+ })
+
#define lll_futex_timed_wait(futexp, val, timespec, private) \
({ \
INTERNAL_SYSCALL_DECL (__err); \