path: root/src/sched
AgeCommit message (Collapse)AuthorLines
2015-03-30fix return value of pthread_getaffinity_np and pthread_setaffinity_npRich Felker-8/+11
these functions are expected to return an error code rather than setting errno and returning -1. (cherry picked from commit 66140b0c926ed097f2cb7474863523e4af351f5b)
2015-03-30fix uninitialized output from sched_getaffinityRich Felker-1/+5
the sched_getaffinity syscall only fills a cpu set up to the set size used/supported by the kernel. the rest is left untouched and userspace is responsible for zero-filling it based on the return value of the syscall. (cherry picked from commit a56e339419c1a90f8a85f86621f3c73945e07b23)
2014-05-20remove useless __yield alias for sched_yieldRich Felker-4/+1
this is no longer used for anything, and reportedly clashed with a builtin on certain compilers. (cherry picked from commit adbf0258be4eea5f012e173de7e55a87f3093669)
2013-08-10add pthread_setaffinity_np and pthread_getaffinity_np functionsRich Felker-18/+26
2013-08-10add cpu affinity interfacesRich Felker-0/+29
this first commit just includes the CPU_* and sched_* interfaces, not the pthread_* interfaces, which may be added later. simple sanity-check testing has been done for the basic interfaces, but most of the macros have not yet been tested.
2012-11-11add support for thread scheduling (POSIX TPS option)Rich Felker-9/+11
linux's sched_* syscalls actually implement the TPS (thread scheduling) functionality, not the PS (process scheduling) functionality which the sched_* functions are supposed to have. omitting support for the PS option (and having the sched_* interfaces fail with ENOSYS rather than omitting them, since some broken software assumes they exist) seems to be the only conforming way to do this on linux.
2012-05-03avoid setting nondefault scheduler tooRich Felker-1/+1
2012-05-03implement stub versions of sched_*Rich Felker-0/+59
these actually work, but for now they prohibit actually setting priority levels and report min/max priority as 0.