aboutsummaryrefslogtreecommitdiff
path: root/src/thread/pthread_setschedparam.c
blob: 4a920d128b38cd597a13299dc8e16e3c689af4d2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "pthread_impl.h"
#include "lock.h"

int pthread_setschedparam(pthread_t t, int policy, const struct sched_param *param)
{
	int r;
	sigset_t set;
	__block_app_sigs(&set);
	LOCK(t->killlock);
	r = !t->tid ? ESRCH : -__syscall(SYS_sched_setscheduler, t->tid, policy, param);
	UNLOCK(t->killlock);
	__restore_sigs(&set);
	return r;
}


#ifdef TEST
int
main(void) {
	return 0;
}
#endif