* [COMMITTED PATCH] MicroBlaze: negated errors in lowlevellock.h
@ 2013-06-14 2:39 David Holsgrove
0 siblings, 0 replies; only message in thread
From: David Holsgrove @ 2013-06-14 2:39 UTC (permalink / raw)
To: libc-ports; +Cc: Kirk Meyer, David Holsgrove
From: Kirk Meyer <kirk.meyer@sencore.com>
The macros in lowlevellock.h are returning positive errors, but the
users of the macros expect negative. This causes e.g. sem_wait to
sometimes return an error with errno set to -EWOULDBLOCK.
Signed-off-by: Kirk Meyer <kirk.meyer@sencore.com>
Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
---
ports/ChangeLog.microblaze | 5 +++++
.../unix/sysv/linux/microblaze/nptl/lowlevellock.h | 8 ++++----
2 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/ports/ChangeLog.microblaze b/ports/ChangeLog.microblaze
index 79658fb..eb60f5b 100644
--- a/ports/ChangeLog.microblaze
+++ b/ports/ChangeLog.microblaze
@@ -1,3 +1,8 @@
+2013-06-14 David Holsgrove <david.holsgrove@xilinx.com>
+
+ * sysdeps/unix/sysv/linux/microblaze/nptl/lowlevellock.h: Correct
+ return from macros.
+
2013-06-05 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/microblaze/bits/atomic.h: Remove executable mode.
diff --git a/ports/sysdeps/unix/sysv/linux/microblaze/nptl/lowlevellock.h b/ports/sysdeps/unix/sysv/linux/microblaze/nptl/lowlevellock.h
index 45b8d9a..70f5537 100644
--- a/ports/sysdeps/unix/sysv/linux/microblaze/nptl/lowlevellock.h
+++ b/ports/sysdeps/unix/sysv/linux/microblaze/nptl/lowlevellock.h
@@ -87,7 +87,7 @@
__ret = INTERNAL_SYSCALL (futex, __err, 4, (long) (futexp), \
__lll_private_flag (FUTEX_WAIT, private), \
(val), (timespec)); \
- INTERNAL_SYSCALL_ERROR_P (__ret, __err) ? -__ret : __ret; \
+ __ret; \
})
#define lll_futex_timed_wait_bitset(futexp, val, timespec, clockbit, private) \
@@ -99,7 +99,7 @@
__lll_private_flag (__op, private), \
(val), (timespec), NULL /* Unused. */, \
FUTEX_BITSET_MATCH_ANY); \
- INTERNAL_SYSCALL_ERROR_P (__ret, __err) ? -__ret : __ret; \
+ __ret; \
})
#define lll_futex_wake(futexp, nr, private) \
@@ -109,7 +109,7 @@
__ret = INTERNAL_SYSCALL (futex, __err, 4, (long) (futexp), \
__lll_private_flag (FUTEX_WAKE, private), \
(nr), 0); \
- INTERNAL_SYSCALL_ERROR_P (__ret, __err) ? -__ret : __ret; \
+ __ret; \
})
#define lll_robust_dead(futexv, private) \
@@ -160,7 +160,7 @@
__ret = INTERNAL_SYSCALL (futex, __err, 5, (futexp), \
__lll_private_flag (__op, private), \
(val), (timespec), mutex); \
- INTERNAL_SYSCALL_ERROR_P (__ret, __err) ? -__ret : __ret; \
+ __ret; \
})
#define lll_futex_cmp_requeue_pi(futexp, nr_wake, nr_move, mutex, val, priv) \
--
1.7.9.5
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2013-06-14 2:39 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-06-14 2:39 [COMMITTED PATCH] MicroBlaze: negated errors in lowlevellock.h David Holsgrove
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).