summaryrefslogtreecommitdiff
path: root/lib/librthread
AgeCommit message (Collapse)Author
2006-01-06When suspending, check the tid of the arg, not of ourselves, dohOtto Moerbeek
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-05Use the system include <spinlock.h> to get the proper functionMarco S Hyman
prototype for _atomic_lock
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-05Fixup stack, it needs 16 bytes headroom. Help from miod@ and drahn.Otto Moerbeek
ok drahn@
2006-01-05Remove redundant mprotect() calls (we're unmapping the region anyway)Otto Moerbeek
and check user stack for proper alignment. ok tedu@ 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-02Don't call pthread_self()->tid when getthrid() will do fine.Otto Moerbeek
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@
2006-01-01Nicer implementation of pthread_main_np(), which avoids the spinlock.Otto Moerbeek
ok tedu@ marc@
2005-12-31Add "print debug foo" function safe to use in signal handlers, example:Marco S Hyman
_rthread_debug(3, "foo = %s", foo); where output is to stderr and will only be printed if the current debug level is >= 3. Messages with a debug level of 0 are always printed. The level can be set from the environment (not enabled yet) or with gdb by modifying variable _rthread_debug_level. "Fine with me" -Otto
2005-12-31No point in saving a bunch of extra registers, and the child's state mustDale Rahn
be fully saved in resisters, if left on the parents stack, it could be overwritten before the child runs. pointed out by miod.
2005-12-31add pthread_mutexattr_gettype.Brad Smith
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-29the story in pthread_rwlockattr_destory() shoudl be destroyedOtto Moerbeek
2005-12-28remainder of the hppa support code for librthread. ok&help kettenis@ mickey@Miod Vallat
2005-12-25sparc64 support code for librthread (_atomic_lock yanked from existingMiod Vallat
libpthread code).
2005-12-25sparc support code for librthread (_atomic_lock yanked from existingMiod Vallat
libpthread code).
2005-12-25remove silly alpha commentTed Unangst
2005-12-25child calls threxit after thread returnTed Unangst
2005-12-25put the error handling jump code back in from brad/marcoTed Unangst
call right sycall after threadfn return
2005-12-25if the start routine returns (never happens), call the right threxit syscallTed Unangst
2005-12-25A better implementation which does not use the caller's stack and thus is notMiod Vallat
raceable.
2005-12-25add rfork_thread for alpha, from kudo takashiTed Unangst
2005-12-24mips64 support code for librthread (_atomic_lock yanked from existingMiod Vallat
libpthread code).
2005-12-23m88k suppport code for librthread.Miod Vallat
2005-12-23vax support bits for librthread (need the child_return() fix just commited).Miod Vallat
2005-12-23m68k support code for librthread; atomic lock routine borrowed from theMiod Vallat
existing libpthread code.
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-22add a missing underscore to the function name rthread_tls_destructors().Brad Smith
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 hppa ldcw alignment issue.Marco Peereboom
Help deraadt, tedu, kettenis Ok tedu, kettenis
2005-12-19fix rev 1.9Brad Smith
pthread_concurrency -> pthread_setconcurrency
2005-12-19this file didn't exist in 2004, so copyright must be 2005Ted Unangst
2005-12-19update copyright to 2005Ted Unangst