diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | nptl/lowlevelrobustlock.c | 7 |
2 files changed, 10 insertions, 2 deletions
@@ -1,3 +1,8 @@ +2016-07-07 Jiyoung Yun <t2wish@gmail.com> + + [BZ #20263] + * nptl/lowlevelrobustlock.c: Implement ETIMEDOUT logic. + 2016-07-06 Stefan Liebler <stli@linux.vnet.ibm.com> * sysdeps/s390/linkmap.h (struct link_map_machine): diff --git a/nptl/lowlevelrobustlock.c b/nptl/lowlevelrobustlock.c index 3b988b2e31..efe307e68b 100644 --- a/nptl/lowlevelrobustlock.c +++ b/nptl/lowlevelrobustlock.c @@ -118,8 +118,11 @@ __lll_robust_timedlock_wait (int *futex, const struct timespec *abstime, || !defined lll_futex_timed_wait_bitset) lll_futex_timed_wait (futex, newval, &rt, private); #else - lll_futex_timed_wait_bitset (futex, newval, abstime, - FUTEX_CLOCK_REALTIME, private); + int err = lll_futex_timed_wait_bitset (futex, newval, abstime, + FUTEX_CLOCK_REALTIME, private); + /* The futex call timed out. */ + if (err == -ETIMEDOUT) + return -err; #endif try: |