summaryrefslogtreecommitdiffstats
path: root/lib/librthread/rthread_tls.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Move mutex, condvar, and thread-specific data routes, pthread_once, andguenther2017-09-051-185/+0
| | | | | | | | 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@
* Get rid of ticket support, replace "struct _spinlock" with "_atomic_lock_t".akfaew2016-09-041-2/+2
| | | | ok tedu@
* Wrap <pthread.h> and <pthread_np.h> to eliminate PLT entries for internalguenther2016-04-021-1/+4
| | | | | | | references. Use _thread_pagesize for the semaphore mmap size instead of calling getpagesize() each time. ok beck@
* remove unnecessary spinlock that slowed down pthread_getspecific.tedu2013-11-021-4/+2
| | | | original report and fix provided by John Carr. ok guenther kettenis
* Free the list used for tracking the pthread_{get,set}specific()guenther2013-07-301-1/+5
| | | | | | | data after calling all the destructors. noted by kettenis@ diff by tedu@
* cleanup and consolidate the spinlock_lock (what a name!) code.tedu2013-06-011-2/+2
| | | | | | | | | | it's now atomic_lock to better reflect its usage, and librthread now features a new spinlock that's really a ticket lock. thrlseep can handle both types of lock via a flag in the clock arg. (temp back compat hack) remove some old stuff that's accumulated along the way and no longer used. some feedback from dlg, who is concerned with all things ticket lock. (you need to boot a new kernel before installing librthread)
* Move <machine/spinlock.h> into rthread.h; strip out unnecessary #includesguenther2011-11-061-11/+1
|
* fix a few bugs in the thread specific data functionstedu2011-07-051-5/+36
|
* use calloc() instead of malloc() and memset()kevlo2008-10-131-3/+2
| | | | "look good" tedu@
* add a missing underscore to the function name rthread_tls_destructors().brad2005-12-221-2/+2
|
* more consistently use _rthread prefix for all not meant to be exportedtedu2005-12-221-4/+4
| | | | interfaces that aren't static, and a few that are but which will change
* update copyright to 2005tedu2005-12-191-2/+2
|
* sanity check for key_delete was missing !tedu2005-12-191-2/+2
|
* initialize all spinlocks to _SPINLOCK_UNLOCKEDtedu2005-12-181-2/+2
|
* the beatings will continue until morale improvestedu2005-12-141-1/+4
|
* there should be a lock around the tls key tabletedu2005-12-141-3/+17
|
* change keys to use table instead of list, makes a sane destructor implementationtedu2005-12-141-17/+41
| | | | possible
* malloc the right size, and memset after malloctedu2005-12-071-2/+4
|
* add userland thread library. incomplete, but functionaltedu2005-12-031-0/+117