summaryrefslogtreecommitdiff
path: root/lib/librthread/rthread.c
AgeCommit message (Collapse)Author
2006-01-06Initialize thread debug in _rthread_init. The debug verbosityMarco S Hyman
can be set in the environment using RTHREAD_DEBUG. ok, tedu@
2006-01-06guess it's time to remove the init printf; sturm found a port thatTed Unangst
didn't like it.
2006-01-05In pthread_join(), check if we create a deadlock trying to joinOtto Moerbeek
with ourself and only free thread after a succesful join. ok marc@
2006-01-05move malloc lock to libc interface fileTed Unangst
2006-01-05add -Wstrict-prototypes -Wmissing-prototypes -Wsign-compareMarco S Hyman
Minor tweaks to compile with the above, primarily in fixing the conflicts between semaphore.h and rthread.h "i like the additional warnings" tedu@
2006-01-04Cleanup struct pthread and stack after thread exits. This version doesOtto Moerbeek
not use a separate reaper thread. ok tedu@ marc@
2006-01-04allow threads to be created in a detached stateMarco S Hyman
do not allow a join to a detached thread "it looks good" otto@
2006-01-01thread stack handling changes. Add guard zones and allow stackMarco S Hyman
size (and guard zone size) to be set using pthread_attr. Guard zones are specified in bytes, but implemented in terms of a page size. OK Otto@
2005-12-31Implement suspend/resume and creation of initially suspended threads.Otto Moerbeek
With this, java seems to be operational. Also make threads_ready non-static, which is needed for an upcoming diff. ok tedu@
2005-12-30Remove exitinng thread from the list of threads. ok tedu@Otto Moerbeek
2005-12-30use queue.h macros for thread house keeping; make some vars non-staticOtto Moerbeek
and fix a bug in thread creation error path. ok tedu@
2005-12-30__aligned__ isn't really necessary on the struct, an aligned memberTed Unangst
will make the right thing happen. verified by kettenis and drahn
2005-12-30prototype all the thread syscalls in rthread.h for now.Ted Unangst
update for new thrwakeup that takes a count argument
2005-12-29Put the existing _np functions into separate file; introduceOtto Moerbeek
pthread_stackseg_np(), from existing pthread lib. discussed with tedu@ ok marc@
2005-12-29implement pthread_main_np(); ok tedu@Otto Moerbeek
2005-12-23for reasons that do not make any sense whatsoever, _rthread_alloc_stackTed Unangst
must be called with the thread_lock held, or we crash in rfork_thread
2005-12-22more consistently use _rthread prefix for all not meant to be exportedTed Unangst
interfaces that aren't static, and a few that are but which will change
2005-12-22change init code to handle failure. (actually, make it impossible to fail,Ted Unangst
but still have the callers check for good measure). prompted by miod "err() in a library???"
2005-12-22Bad commit, breaks hppa64. Prompted by deraadt@Marco Peereboom
2005-12-21Align hppa stack to 64 bytes.Marco Peereboom
ok tedu
2005-12-21make alloc_stack take an optional base, preparation for stack attributesTed Unangst
deal with machines that have upside down stacks
2005-12-21check a few remaining mallocs for failure, along with mmap and rforkTed Unangst
started by miod
2005-12-19fix rev 1.9Brad Smith
pthread_concurrency -> pthread_setconcurrency
2005-12-19update copyright to 2005Ted Unangst
2005-12-19add pthread_get/set_concurrency (useless for now)Ted Unangst
add pthread_get/set_stack[addr] (info not used yet)
2005-12-18initialize all spinlocks to _SPINLOCK_UNLOCKEDTed Unangst
2005-12-14add pthread_cleanup_push and pthread_cleanup_popTed Unangst
2005-12-14add pthread_kill (just kill(2) really)Ted Unangst
2005-12-14add bits for pthread_cancel. we don't really have cancellation points yetTed Unangst
but some of the functions are here now.
2005-12-14change keys to use table instead of list, makes a sane destructor implementationTed Unangst
possible
2005-12-13correct implementation of pthread_cond_signal. it doesn't raise the semTed Unangst
value if there are no waiters.
2005-12-03syscall is actually sched_yield now, as millert suggestedTed Unangst
2005-12-03add userland thread library. incomplete, but functionalTed Unangst