add support for thread scheduling (POSIX TPS option)
[musl] / src / thread / pthread_getschedparam.c
diff --git a/src/thread/pthread_getschedparam.c b/src/thread/pthread_getschedparam.c
new file mode 100644 (file)
index 0000000..7b6a95f
--- /dev/null
@@ -0,0 +1,17 @@
+#include "pthread_impl.h"
+
+int pthread_getschedparam(pthread_t t, int *restrict policy, struct sched_param *restrict param)
+{
+       int r;
+       __lock(t->killlock);
+       if (t->dead) {
+               r = ESRCH;
+       } else {
+               r = -__syscall(SYS_sched_getparam, t->tid, &param);
+               if (!r) {
+                       *policy = __syscall(SYS_sched_getscheduler, t->tid);
+               }
+       }
+       __unlock(t->killlock);
+       return r;
+}