Index: fusl/src/thread/pthread_mutex_lock.c |
diff --git a/fusl/src/thread/pthread_mutex_lock.c b/fusl/src/thread/pthread_mutex_lock.c |
new file mode 100644 |
index 0000000000000000000000000000000000000000..d0c93cab50119feee0741b14006f346f000b87c6 |
--- /dev/null |
+++ b/fusl/src/thread/pthread_mutex_lock.c |
@@ -0,0 +1,14 @@ |
+#include "pthread_impl.h" |
+ |
+int __pthread_mutex_timedlock(pthread_mutex_t *restrict, const struct timespec *restrict); |
+ |
+int __pthread_mutex_lock(pthread_mutex_t *m) |
+{ |
+ if ((m->_m_type&15) == PTHREAD_MUTEX_NORMAL |
+ && !a_cas(&m->_m_lock, 0, EBUSY)) |
+ return 0; |
+ |
+ return __pthread_mutex_timedlock(m, 0); |
+} |
+ |
+weak_alias(__pthread_mutex_lock, pthread_mutex_lock); |