summaryrefslogtreecommitdiffstats
path: root/lib/libthr/thread/thr_private.h
diff options
context:
space:
mode:
authordavidxu <davidxu@FreeBSD.org>2008-04-02 07:41:25 +0000
committerdavidxu <davidxu@FreeBSD.org>2008-04-02 07:41:25 +0000
commit570834290dca75d4044e973157f19c9f8dcc70d6 (patch)
tree5dfc9d3bd1ed45091e36de296dea8afc61c26857 /lib/libthr/thread/thr_private.h
parentaefa44f0cc0aed8dbab7c9b8e6b44ed0aabd592a (diff)
downloadFreeBSD-src-570834290dca75d4044e973157f19c9f8dcc70d6.zip
FreeBSD-src-570834290dca75d4044e973157f19c9f8dcc70d6.tar.gz
Replace function _umtx_op with _umtx_op_err, the later function directly
returns errno, because errno can be mucked by user's signal handler and most of pthread api heavily depends on errno to be correct, this change should improve stability of the thread library.
Diffstat (limited to 'lib/libthr/thread/thr_private.h')
-rw-r--r--lib/libthr/thread/thr_private.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/libthr/thread/thr_private.h b/lib/libthr/thread/thr_private.h
index 711ae5e..e377c5b 100644
--- a/lib/libthr/thread/thr_private.h
+++ b/lib/libthr/thread/thr_private.h
@@ -709,6 +709,8 @@ ssize_t __sys_write(int, const void *, size_t);
void __sys_exit(int);
#endif
+int _umtx_op_err(void *, int op, u_long, void *, void *);
+
static inline int
_thr_isthreaded(void)
{
OpenPOWER on IntegriCloud