summaryrefslogtreecommitdiffstats
path: root/lib/libc/thread/rthread.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* annoying whitespacederaadt2020-10-121-2/+2
|
* Add memory barriers to libc's _spinlock() to make the mechanismvisa2018-05-131-2/+11
| | | | | | | | | | serialize memory accesses properly. _spinlock()'s backend, _atomic_lock(), already issues an entry barrier on some architectures, but that practice has not been consistent. This patch generalizes the barrier use. OK kettenis@, mpi@
* Implement __cxa_thread_atexit to support C++11 thread_local scope. Thekettenis2017-12-051-1/+2
| | | | | | | interface is also made available as __cxa_thread_atexit_impl to satisfy the needs of GNU libstdc++. ok guenther@, millert@
* Revert recent changes to unbreak ports/net/sambajca2017-11-041-4/+8
| | | | | | | | While it is not clear (to me) why that ports ends up with corrupted shared libs, reverting those changes fixes the issue and should allow us to close p2k17 more smoothly. Discussed with a bunch, ok ajacoutot@ guenther@
* Change pthread_cleanup_{push,pop} to macros that store the cleanup infoguenther2017-10-281-8/+4
| | | | | | | | | | | | | | on the stack instead of mallocing the list and move the APIs from libpthread to libc so that they can be used inside libc. Note: the standard was explicitly written to permit/support this "macro with unmatched brace" style and it's what basically everyone else already does. We xor the info with random cookies with a random magic to detect/trip-up overwrites. Major bump to both libc and libpthread due to the API move. ok mpi@
* Move mutex, condvar, and thread-specific data routes, pthread_once, andguenther2017-09-051-568/+32
| | | | | | | | pthread_exit from libpthread to libc, along with low-level bits to support them. Major bump to both libc and libpthread. Requested by libressl team. Ports testing by naddy@ ok kettenis@
* s/DEF_STD/DEF_STRONG/ to match namespace.h differences between librthreadguenther2017-08-151-4/+4
| | | | and libc
* Sort headers per style(9)guenther2017-08-151-7/+6
|
* Copy files from ../librthread in preparation for moving functionalityguenther2017-08-151-0/+692
from libpthread to libc. No changes to the build yet, just making it easier to review the substantive diffs. ok beck@ kettenis@ tedu@