Index: fusl/src/thread/mtx_unlock.c |
diff --git a/fusl/src/thread/mtx_unlock.c b/fusl/src/thread/mtx_unlock.c |
new file mode 100644 |
index 0000000000000000000000000000000000000000..5033ace7f3292c9604e4f9627c3f912fba6aae87 |
--- /dev/null |
+++ b/fusl/src/thread/mtx_unlock.c |
@@ -0,0 +1,11 @@ |
+#include <threads.h> |
+ |
+int __pthread_mutex_unlock(mtx_t *); |
+ |
+int mtx_unlock(mtx_t *mtx) |
+{ |
+ /* The only cases where pthread_mutex_unlock can return an |
+ * error are undefined behavior for C11 mtx_unlock, so we can |
+ * assume it does not return an error and simply tail call. */ |
+ return __pthread_mutex_unlock(mtx); |
+} |