summaryrefslogtreecommitdiffstats
path: root/lib/libthr/thread/thr_spec.c
Commit message (Collapse)AuthorAgeFilesLines
* MFC r282948:kib2015-05-291-110/+91
| | | | | | Use bare mmap(2) to allocate space for the per-thread keys, instead of malloc(). This allows third party mallocs, which use pthread_setspecific(3) on the allocation path, to work.
* Return one-based key so that user can check if the key is ever allocateddavidxu2013-05-161-4/+7
| | | | | | in the first place. Initial patch submitted by: phk
* Unregister thread specific data destructor when a corresponding dsodavidxu2010-08-271-0/+21
| | | | is unloaded.
* don't report error if key was deleted.davidxu2009-09-251-1/+11
| | | | PR: threads/135462
* In _pthread_key_create() ensure that libthr is initialized. Thismarius2007-11-061-1/+5
| | | | | | | | | | | fixes a NULL-dereference of curthread when libstdc+ initializes the exception handling globals on archs we can't use GNU TLS due to lack of support in binutils 2.15 (i.e. arm and sparc64), yet, thus making threaded C++ programs compiled with GCC 4.2.1 work again on these archs. Reviewed by: davidxu MFC after: 3 days
* Remove 3rd clause, renumber, ok per emailimp2007-01-121-4/+1
|
* Explicitly request pre-zeroed memory instead of memset'ing ourdelphij2006-05-311-5/+1
| | | | | | own. Ok'ed by: davidxu
* WARNS level 4 cleanup.davidxu2006-04-041-7/+8
|
* Import my recent 1:1 threading working. some features improved includes:davidxu2005-04-021-74/+85
| | | | | | | | | | | | | | | | 1. fast simple type mutex. 2. __thread tls works. 3. asynchronous cancellation works ( using signal ). 4. thread synchronization is fully based on umtx, mainly, condition variable and other synchronization objects were rewritten by using umtx directly. those objects can be shared between processes via shared memory, it has to change ABI which does not happen yet. 5. default stack size is increased to 1M on 32 bits platform, 2M for 64 bits platform. As the result, some mysql super-smack benchmarks show performance is improved massivly. Okayed by: jeff, mtm, rwatson, scottl
* - Define curthread as _get_curthread() and remove all direct calls tojeff2003-04-021-9/+2
| | | | | | | _get_curthread(). This is similar to the kernel's curthread. Doing this saves stack overhead and is more convenient to the programmer. - Pass the pointer to the newly created thread to _thread_init(). - Remove _get_curthread_slow().
* - Add libthr but don't hook it up to the regular build yet. This is anjeff2003-04-011-0/+225
adaptation of libc_r for the thr system call interface. This is beta quality code.
OpenPOWER on IntegriCloud