1 #include <threads.h>
2 #include <errno.h>
3 #include "syscall.h"
4 
thrd_sleep(const struct timespec * req,struct timespec * rem)5 int thrd_sleep(const struct timespec *req, struct timespec *rem)
6 {
7 	int ret = __syscall(SYS_nanosleep, req, rem);
8 	switch (ret) {
9 	case 0:      return 0;
10 	case -EINTR: return -1; /* value specified by C11 */
11 	default:     return -2;
12 	}
13 }
14