summaryrefslogtreecommitdiffstats
path: root/lib/libthr/arch
Commit message (Collapse)AuthorAgeFilesLines
* .S comments must be C comments, not ASM ones.obrien2003-06-021-1/+1
|
* Missing unlock.mtm2003-05-291-0/+2
| | | | Approved by: re/jhb
* Return gracefully, rather than aborting, when the maximum concurrentmtm2003-05-253-7/+12
| | | | | | threads per process has been reached. Return EAGAIN, as per spec. Approved by: re/blanket libthr
* The struct mcontext has changed. It's using the register sets. Bringmarcel2003-05-251-1/+1
| | | | this in line.
* Add two functions: _spinlock_pthread() and _spinunlock_pthread()mtm2003-05-231-2/+4
| | | | | | | | | | that take the address of a struct pthread as their first argument. _spin[un]lock() just become wrappers arround these two functions. These new functions are for use in situations where curthread can't be used. One example is _thread_retire(), where we invalidate the array index curthread uses to get its pointer.. Approved by: re/blanket libthr
* Make WARNS2 clean. The fixes mostly included:mtm2003-05-231-0/+5
| | | | | | | | o removed unused variables o explicit inclusion of header files o prototypes for externally defined functions Approved by: re/blanket libthr
* o Make the defenition of _set_curthread() match its declarationmtm2003-05-211-5/+27
| | | | | | | | | | | | in thr_private.h o Lock down the ldt_entries array and ldt_free, which points to the next free slot. As noted in the comments, it's necessary to special case the initial_thread because %gs is not setup for it yet. This is ok because that early in the program there won't be any reentrancy issues anyways. Approved by: re/blanket libthr
* Fix a null dereference leading to a core dump whenmtm2003-05-061-1/+4
| | | | | | | | the number of threads exceeds the number of open slots in ldt_entries[]. Approved by: markm (mentor)(implicit) Reviewed by: jeff
* Add support for ia64.marcel2003-04-202-0/+64
| | | | | | | | | | | Note that the tp register (r13) is reserved as the TLS pointer in the same way that that gp register (r1) is reserved as the global pointer. This implementation uses the tp register to point to the thread structure used by the threads implementation. This is not in violation with the runtime specification provided the TLS is a fixed distance from the thread structure. This is only an issue when code used the __thread keyword to create TLS. This is not supported at the moment.
* - Pass a ucontext_t to _set_curthread. If non-NULL the new thread is setjake2003-04-032-4/+11
| | | | | | | | as curthread in the new context, so that it will be set automatically when the thread is switched to. This fixes a race where we'd run for a little while with curthread unset in _thread_start. Reviewed by: jeff
* - Don't overrun the ldt buffer.jeff2003-04-021-2/+2
| | | | Submitted by: gordan@freebsd.org
* Implement _get_curthread and _set_curthread. This is especially easy.jake2003-04-022-0/+58
|
* Add MD makefile.jake2003-04-011-0/+3
|
* - Adjust the makefiles so we have a per architecture makefile.jeff2003-04-011-0/+5
|
* - Add libthr but don't hook it up to the regular build yet. This is anjeff2003-04-012-0/+139
adaptation of libc_r for the thr system call interface. This is beta quality code.
OpenPOWER on IntegriCloud