musl/src/thread
Rich Felker b8ca9eb530 fix fallback checks for kernels without private futex support
for unknown syscall commands, the kernel produces ENOSYS, not EINVAL.
2014-08-22 23:49:54 -04:00
..
arm clone: make clone a wrapper around __clone 2014-02-09 20:07:43 -06:00
i386 optimize i386 ___tls_get_addr asm 2014-06-19 02:48:45 -04:00
microblaze clone: make clone a wrapper around __clone 2014-02-09 20:07:43 -06:00
mips fix clobbering of caller's stack in mips __clone function 2013-09-16 11:52:39 -04:00
or1k add or1k (OpenRISC 1000) architecture port 2014-07-18 14:10:23 -04:00
powerpc powerpc: handle syscall error in clone. 2012-11-19 16:58:09 +01:00
sh rename superh port to "sh" for consistency 2014-02-27 22:03:25 -05:00
x32 x32 port (diff against vanilla x86_64) 2014-02-23 11:09:16 +01:00
x86_64 clone: make clone a wrapper around __clone 2014-02-09 20:07:43 -06:00
__futex.c global cleanup to use the new syscall interface 2011-03-20 00:16:43 -04:00
__lock.c fix potential deadlock bug in libc-internal locking logic 2013-09-20 02:00:27 -04:00
__set_thread_area.c generic c version of __set_thread_area for archs where it works 2012-07-11 11:34:46 -04:00
__syscall_cp.c rework cancellation weak alias logic not to depend on archive order 2014-07-06 22:56:25 -04:00
__timedwait.c fix fallback checks for kernels without private futex support 2014-08-22 23:49:54 -04:00
__tls_get_addr.c separate __tls_get_addr implementation from dynamic linker/init_tls 2014-06-19 02:59:44 -04:00
__unmapself.c initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00
__wait.c fix fallback checks for kernels without private futex support 2014-08-22 23:49:54 -04:00
clone.c clone: make clone a wrapper around __clone 2014-02-09 20:07:43 -06:00
lock_ptc.c support for TLS in dynamic-loaded (dlopen) modules 2012-10-05 11:51:50 -04:00
pthread_atfork.c ditch the priority inheritance locks; use malloc's version of lock 2012-04-24 16:32:23 -04:00
pthread_attr_destroy.c initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00
pthread_attr_get.c make futex operations use private-futex mode when possible 2014-08-15 23:54:52 -04:00
pthread_attr_init.c include cleanups: remove unused headers and add feature test macros 2013-12-12 05:09:18 +00:00
pthread_attr_setdetachstate.c reject invalid attribute settings 2011-03-07 15:46:37 -05:00
pthread_attr_setguardsize.c reorganize pthread data structures and move the definitions to alltypes.h 2011-02-17 17:16:20 -05:00
pthread_attr_setinheritsched.c add support for thread scheduling (POSIX TPS option) 2012-11-11 15:38:04 -05:00
pthread_attr_setschedparam.c add support for thread scheduling (POSIX TPS option) 2012-11-11 15:38:04 -05:00
pthread_attr_setschedpolicy.c add support for thread scheduling (POSIX TPS option) 2012-11-11 15:38:04 -05:00
pthread_attr_setscope.c add support for thread scheduling (POSIX TPS option) 2012-11-11 15:38:04 -05:00
pthread_attr_setstack.c pthread stack treatment overhaul for application-provided stacks, etc. 2013-02-01 22:10:40 -05:00
pthread_attr_setstacksize.c pthread stack treatment overhaul for application-provided stacks, etc. 2013-02-01 22:10:40 -05:00
pthread_barrier_destroy.c next step making barrier self-sync'd destruction safe 2011-09-28 18:00:02 -04:00
pthread_barrier_init.c make pthread attribute types structs, even when they just have one field 2013-07-22 13:57:02 -04:00
pthread_barrier_wait.c fix fallback checks for kernels without private futex support 2014-08-22 23:49:54 -04:00
pthread_barrierattr_destroy.c implement barrier attribute functions (essentially no-ops) 2011-03-07 15:42:52 -05:00
pthread_barrierattr_init.c clean up sloppy nested inclusion from pthread_impl.h 2012-11-08 17:04:20 -05:00
pthread_barrierattr_setpshared.c make pthread attribute types structs, even when they just have one field 2013-07-22 13:57:02 -04:00
pthread_cancel.c rework cancellation weak alias logic not to depend on archive order 2014-07-06 22:56:25 -04:00
pthread_cleanup_push.c rename file containing pthread_cleanup_push and pop for consistency 2014-07-06 23:10:35 -04:00
pthread_cond_broadcast.c redesign cond var implementation to fix multiple issues 2014-08-17 22:09:47 -04:00
pthread_cond_destroy.c redesign cond var implementation to fix multiple issues 2014-08-17 22:09:47 -04:00
pthread_cond_init.c redesign cond var implementation to fix multiple issues 2014-08-17 22:09:47 -04:00
pthread_cond_signal.c redesign cond var implementation to fix multiple issues 2014-08-17 22:09:47 -04:00
pthread_cond_timedwait.c fix fallback checks for kernels without private futex support 2014-08-22 23:49:54 -04:00
pthread_cond_wait.c use restrict everywhere it's required by c99 and/or posix 2008 2012-09-06 22:44:55 -04:00
pthread_condattr_destroy.c implement pthread_condattr_* interfaces 2011-03-07 16:20:12 -05:00
pthread_condattr_init.c clean up sloppy nested inclusion from pthread_impl.h 2012-11-08 17:04:20 -05:00
pthread_condattr_setclock.c make pthread attribute types structs, even when they just have one field 2013-07-22 13:57:02 -04:00
pthread_condattr_setpshared.c make pthread attribute types structs, even when they just have one field 2013-07-22 13:57:02 -04:00
pthread_create.c fix use of uninitialized memory with application-provided thread stacks 2014-08-22 14:05:10 -04:00
pthread_detach.c fix several locks that weren't updated right for new futex-based __lock 2012-07-12 11:23:43 -04:00
pthread_equal.c macro for pthread_equal 2011-08-14 15:17:36 -04:00
pthread_getattr_np.c support configurable page size on mips, powerpc and microblaze 2013-09-15 02:00:32 +00:00
pthread_getconcurrency.c implement pthread_[sg]etconcurrency. 2011-05-30 11:31:07 -04:00
pthread_getcpuclockid.c support cputime clocks for processes/threads other than self 2013-06-08 11:36:41 -04:00
pthread_getschedparam.c fix syscall argument bug in pthread_getschedparam 2013-06-26 22:02:23 -04:00
pthread_getspecific.c optimize POSIX TSD for fast pthread_getspecific 2011-03-03 18:30:44 -05:00
pthread_join.c clean up sloppy nested inclusion from pthread_impl.h 2012-11-08 17:04:20 -05:00
pthread_key_create.c work around constant folding bug 61144 in gcc 4.9.0 and 4.9.1 2014-07-16 21:32:06 -04:00
pthread_kill.c eliminate use of cached pid from thread structure 2014-07-05 23:29:55 -04:00
pthread_mutex_consistent.c fix robust mutex unrecoverable status, and related clean-up 2014-08-16 19:52:04 -04:00
pthread_mutex_destroy.c initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00
pthread_mutex_getprioceiling.c add stub versions of some missing optional pthread interfaces 2012-11-17 18:42:16 -05:00
pthread_mutex_init.c enable private futex for process-local robust mutexes 2014-08-16 02:28:34 -04:00
pthread_mutex_lock.c make futex operations use private-futex mode when possible 2014-08-15 23:54:52 -04:00
pthread_mutex_setprioceiling.c add stub versions of some missing optional pthread interfaces 2012-11-17 18:42:16 -05:00
pthread_mutex_timedlock.c fix false ownership of mutexes due to tid reuse, using robust list 2014-08-16 19:15:19 -04:00
pthread_mutex_trylock.c fix possible failure-to-wake deadlock with robust mutexes 2014-08-17 02:05:14 -04:00
pthread_mutex_unlock.c make pointers used in robust list volatile 2014-08-17 00:46:26 -04:00
pthread_mutexattr_destroy.c initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00
pthread_mutexattr_init.c clean up sloppy nested inclusion from pthread_impl.h 2012-11-08 17:04:20 -05:00
pthread_mutexattr_setprotocol.c add stub versions of some missing optional pthread interfaces 2012-11-17 18:42:16 -05:00
pthread_mutexattr_setpshared.c make futex operations use private-futex mode when possible 2014-08-15 23:54:52 -04:00
pthread_mutexattr_setrobust.c make pointers used in robust list volatile 2014-08-17 00:46:26 -04:00
pthread_mutexattr_settype.c make pthread attribute types structs, even when they just have one field 2013-07-22 13:57:02 -04:00
pthread_once.c make futex operations use private-futex mode when possible 2014-08-15 23:54:52 -04:00
pthread_rwlock_destroy.c initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00
pthread_rwlock_init.c make futex operations use private-futex mode when possible 2014-08-15 23:54:52 -04:00
pthread_rwlock_rdlock.c overhaul rwlocks to address several issues 2011-08-03 10:21:32 -04:00
pthread_rwlock_timedrdlock.c make futex operations use private-futex mode when possible 2014-08-15 23:54:52 -04:00
pthread_rwlock_timedwrlock.c make futex operations use private-futex mode when possible 2014-08-15 23:54:52 -04:00
pthread_rwlock_tryrdlock.c overhaul rwlocks to address several issues 2011-08-03 10:21:32 -04:00
pthread_rwlock_trywrlock.c overhaul rwlocks to address several issues 2011-08-03 10:21:32 -04:00
pthread_rwlock_unlock.c make futex operations use private-futex mode when possible 2014-08-15 23:54:52 -04:00
pthread_rwlock_wrlock.c overhaul rwlocks to address several issues 2011-08-03 10:21:32 -04:00
pthread_rwlockattr_destroy.c implement pthread_rwlockattr_* (essentially no-ops) 2011-03-07 16:43:25 -05:00
pthread_rwlockattr_init.c clean up sloppy nested inclusion from pthread_impl.h 2012-11-08 17:04:20 -05:00
pthread_rwlockattr_setpshared.c make pthread attribute types structs, even when they just have one field 2013-07-22 13:57:02 -04:00
pthread_self.c always initialize thread pointer at program start 2014-03-24 16:57:11 -04:00
pthread_setcancelstate.c always initialize thread pointer at program start 2014-03-24 16:57:11 -04:00
pthread_setcanceltype.c replace all remaining internal uses of pthread_self with __pthread_self 2014-06-10 04:02:40 -04:00
pthread_setconcurrency.c implement pthread_[sg]etconcurrency. 2011-05-30 11:31:07 -04:00
pthread_setschedparam.c fix failure of pthread_setschedparam to pass correct param to kernel 2013-06-26 21:34:44 -04:00
pthread_setschedprio.c add support for thread scheduling (POSIX TPS option) 2012-11-11 15:38:04 -05:00
pthread_setspecific.c optimize POSIX TSD for fast pthread_getspecific 2011-03-03 18:30:44 -05:00
pthread_sigmask.c include cleanups: remove unused headers and add feature test macros 2013-12-12 05:09:18 +00:00
pthread_spin_destroy.c initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00
pthread_spin_init.c initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00
pthread_spin_lock.c fix more instances of old a_xchg (use new a_swap name) 2011-09-16 14:33:51 -04:00
pthread_spin_trylock.c fix more instances of old a_xchg (use new a_swap name) 2011-09-16 14:33:51 -04:00
pthread_spin_unlock.c prepare pthread_spin_unlock for archs that need memory barriers 2011-03-24 23:06:48 -04:00
pthread_testcancel.c rework cancellation weak alias logic not to depend on archive order 2014-07-06 22:56:25 -04:00
sem_destroy.c implement POSIX semaphores 2011-03-04 00:45:59 -05:00
sem_getvalue.c use restrict everywhere it's required by c99 and/or posix 2008 2012-09-06 22:44:55 -04:00
sem_init.c make futex operations use private-futex mode when possible 2014-08-15 23:54:52 -04:00
sem_open.c fix temp file leak in sem_open on successful creation of new semaphore 2013-06-26 21:41:51 -04:00
sem_post.c make futex operations use private-futex mode when possible 2014-08-15 23:54:52 -04:00
sem_timedwait.c make futex operations use private-futex mode when possible 2014-08-15 23:54:52 -04:00
sem_trywait.c retry on cas failures in sem_trywait 2012-07-24 00:51:36 -04:00
sem_unlink.c implement POSIX semaphores 2011-03-04 00:45:59 -05:00
sem_wait.c implement POSIX semaphores 2011-03-04 00:45:59 -05:00
synccall.c eliminate use of cached pid from thread structure 2014-07-05 23:29:55 -04:00
syscall_cp.c overhaul pthread cancellation 2011-04-17 11:43:03 -04:00
tls.c beginnings of full TLS support in shared libraries 2012-10-04 21:01:56 -04:00
vmlock.c fix extremely rare but dangerous race condition in robust mutexes 2012-08-17 17:13:53 -04:00