summaryrefslogtreecommitdiff
path: root/include/sched.h
AgeCommit message (Collapse)AuthorLines
2015-03-30fix CPU_EQUAL macro in sched.hSzabolcs Nagy-1/+1
(cherry picked from commit d146d4dc1104aa3472daf81d2581aca65df54d13)
2014-02-11fix signed and unsigned comparision in macros in public headersSzabolcs Nagy-1/+1
gcc -Wsign-compare warns about expanded macros that were defined in standard headers (before gcc 4.8) which can make builds fail that use -Werror. changed macros: WIFSIGNALED, __CPU_op_S
2013-08-10add cpu affinity interfacesRich Felker-0/+61
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-0/+3
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-09-08add acct, accept4, setns, and dup3 syscalls (linux extensions)Rich Felker-0/+1
based on patch by Justin Cormack
2012-09-07default features: make musl usable without feature test macrosRich Felker-0/+2
the old behavior of exposing nothing except plain ISO C can be obtained by defining __STRICT_ANSI__ or using a compiler option (such as -std=c99) that predefines it. the new default featureset is POSIX with XSI plus _BSD_SOURCE. any explicit feature test macros will inhibit the default. installation docs have also been updated to reflect this change.
2012-04-29add linux-specific unshare syscall wrapperRich Felker-0/+1
2011-09-18overhaul clone syscall wrappingRich Felker-0/+27
several things are changed. first, i have removed the old __uniclone function signature and replaced it with the "standard" linux __clone/clone signature. this was necessary to expose clone to applications anyway, and it makes it easier to port __clone to new archs, since it's now testable independently of pthread_create. secondly, i have removed all references to the ugly ldt descriptor structure (i386 only) from the c code and pthread structure. in places where it is needed, it is now created on the stack just when it's needed, in assembly code. thus, the i386 __clone function takes the desired thread pointer as its argument, rather than an ldt descriptor pointer, just like on all other sane archs. this should not affect applications since there is really no way an application can use clone with threads/tls in a way that doesn't horribly conflict with and clobber the underlying implementation's use. applications are expected to use clone only for creating actual processes, possibly with new namespace features and whatnot.
2011-02-12initial check-in, version 0.5.0v0.5.0Rich Felker-0/+37