Index: fusl/src/thread/thrd_sleep.c |
diff --git a/fusl/src/thread/thrd_sleep.c b/fusl/src/thread/thrd_sleep.c |
new file mode 100644 |
index 0000000000000000000000000000000000000000..e8dfe400cb701f7ae470b192ec04c495a7bfbb18 |
--- /dev/null |
+++ b/fusl/src/thread/thrd_sleep.c |
@@ -0,0 +1,13 @@ |
+#include <threads.h> |
+#include <errno.h> |
+#include "syscall.h" |
+ |
+int thrd_sleep(const struct timespec *req, struct timespec *rem) |
+{ |
+ int ret = __syscall(SYS_nanosleep, req, rem); |
+ switch (ret) { |
+ case 0: return 0; |
+ case -EINTR: return -1; /* value specified by C11 */ |
+ default: return -2; |
+ } |
+} |