add pthread_setaffinity_np and pthread_getaffinity_np functions
This commit is contained in:
parent
eeb0328f20
commit
7406fdf5a1
4 changed files with 29 additions and 18 deletions
26
src/sched/affinity.c
Normal file
26
src/sched/affinity.c
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
#define _GNU_SOURCE
|
||||
#include <sched.h>
|
||||
#include "pthread_impl.h"
|
||||
#include "syscall.h"
|
||||
|
||||
int sched_setaffinity(pid_t tid, size_t size, const cpu_set_t *set)
|
||||
{
|
||||
return syscall(SYS_sched_setaffinity, tid, size, set);
|
||||
}
|
||||
|
||||
int pthread_setaffinity_np(pthread_t td, size_t size, const cpu_set_t *set)
|
||||
{
|
||||
return syscall(SYS_sched_setaffinity, td->tid, size, set);
|
||||
}
|
||||
|
||||
int sched_getaffinity(pid_t tid, size_t size, cpu_set_t *set)
|
||||
{
|
||||
long ret = __syscall(SYS_sched_getaffinity, tid, size, set);
|
||||
if (ret > 0) ret = 0;
|
||||
return __syscall_ret(ret);
|
||||
}
|
||||
|
||||
int pthread_getaffinity_np(pthread_t td, size_t size, cpu_set_t *set)
|
||||
{
|
||||
return sched_getaffinity(td->tid, size, set);
|
||||
}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
#define _GNU_SOURCE
|
||||
#include <sched.h>
|
||||
#include "syscall.h"
|
||||
|
||||
int sched_getaffinity(pid_t tid, size_t size, cpu_set_t *set)
|
||||
{
|
||||
long ret = __syscall(SYS_sched_getaffinity, tid, size, set);
|
||||
if (ret > 0) ret = 0;
|
||||
return __syscall_ret(ret);
|
||||
}
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
#define _GNU_SOURCE
|
||||
#include <sched.h>
|
||||
#include "syscall.h"
|
||||
|
||||
int sched_setaffinity(pid_t tid, size_t size, const cpu_set_t *set)
|
||||
{
|
||||
return syscall(SYS_sched_setaffinity, tid, size, set);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue