about summary refs log tree commit diff
path: root/src/sched
Commit message (Collapse)AuthorAgeFilesLines
* fix return value of pthread_getaffinity_np and pthread_setaffinity_npRich Felker2015-03-301-8/+11
| | | | | | | these functions are expected to return an error code rather than setting errno and returning -1. (cherry picked from commit 66140b0c926ed097f2cb7474863523e4af351f5b)
* fix uninitialized output from sched_getaffinityRich Felker2015-03-301-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)
* remove useless __yield alias for sched_yieldRich Felker2014-05-201-4/+1
| | | | | | | this is no longer used for anything, and reportedly clashed with a builtin on certain compilers. (cherry picked from commit adbf0258be4eea5f012e173de7e55a87f3093669)
* add pthread_setaffinity_np and pthread_getaffinity_np functionsRich Felker2013-08-103-18/+26
|
* add cpu affinity interfacesRich Felker2013-08-103-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.
* add support for thread scheduling (POSIX TPS option)Rich Felker2012-11-116-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.
* avoid setting nondefault scheduler tooRich Felker2012-05-031-1/+1
|
* implement stub versions of sched_*Rich Felker2012-05-037-0/+59
these actually work, but for now they prohibit actually setting priority levels and report min/max priority as 0.