blob: 227aece77d3d51070bd28f5163e77be2ff2a177a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#include "pthread_impl.h"
#include "lock.h"
int pthread_getschedparam(pthread_t t, int *restrict policy, struct sched_param *restrict param)
{
int r;
sigset_t set;
__block_app_sigs(&set);
LOCK(t->killlock);
if (!t->tid) {
r = ESRCH;
} else {
r = -__syscall(SYS_sched_getparam, t->tid, param);
if (!r) {
*policy = __syscall(SYS_sched_getscheduler, t->tid);
}
}
UNLOCK(t->killlock);
__restore_sigs(&set);
return r;
}
#ifdef TEST
int
main(void) {
return 0;
}
#endif
|