| OLD | NEW |
| 1 #define _GNU_SOURCE | 1 #define _GNU_SOURCE |
| 2 #include <sched.h> | 2 #include <sched.h> |
| 3 #include <string.h> | 3 #include <string.h> |
| 4 #include "pthread_impl.h" | 4 #include "pthread_impl.h" |
| 5 #include "syscall.h" | 5 #include "syscall.h" |
| 6 | 6 |
| 7 int sched_setaffinity(pid_t tid, size_t size, const cpu_set_t *set) | 7 int sched_setaffinity(pid_t tid, size_t size, const cpu_set_t* set) { |
| 8 { | 8 return syscall(SYS_sched_setaffinity, tid, size, set); |
| 9 » return syscall(SYS_sched_setaffinity, tid, size, set); | |
| 10 } | 9 } |
| 11 | 10 |
| 12 int pthread_setaffinity_np(pthread_t td, size_t size, const cpu_set_t *set) | 11 int pthread_setaffinity_np(pthread_t td, size_t size, const cpu_set_t* set) { |
| 13 { | 12 return -__syscall(SYS_sched_setaffinity, td->tid, size, set); |
| 14 » return -__syscall(SYS_sched_setaffinity, td->tid, size, set); | |
| 15 } | 13 } |
| 16 | 14 |
| 17 static int do_getaffinity(pid_t tid, size_t size, cpu_set_t *set) | 15 static int do_getaffinity(pid_t tid, size_t size, cpu_set_t* set) { |
| 18 { | 16 long ret = __syscall(SYS_sched_getaffinity, tid, size, set); |
| 19 » long ret = __syscall(SYS_sched_getaffinity, tid, size, set); | 17 if (ret < 0) |
| 20 » if (ret < 0) return ret; | 18 return ret; |
| 21 » if (ret < size) memset((char *)set+ret, 0, size-ret); | 19 if (ret < size) |
| 22 » return 0; | 20 memset((char*)set + ret, 0, size - ret); |
| 21 return 0; |
| 23 } | 22 } |
| 24 | 23 |
| 25 int sched_getaffinity(pid_t tid, size_t size, cpu_set_t *set) | 24 int sched_getaffinity(pid_t tid, size_t size, cpu_set_t* set) { |
| 26 { | 25 return __syscall_ret(do_getaffinity(tid, size, set)); |
| 27 » return __syscall_ret(do_getaffinity(tid, size, set)); | |
| 28 } | 26 } |
| 29 | 27 |
| 30 int pthread_getaffinity_np(pthread_t td, size_t size, cpu_set_t *set) | 28 int pthread_getaffinity_np(pthread_t td, size_t size, cpu_set_t* set) { |
| 31 { | 29 return -do_getaffinity(td->tid, size, set); |
| 32 » return -do_getaffinity(td->tid, size, set); | |
| 33 } | 30 } |
| OLD | NEW |