summaryrefslogtreecommitdiff
path: root/lib/libc/thread
AgeCommit message (Collapse)Author
2008-06-13remove _MALLOC_LOCK_INIT; major bump; ok deraadt@Otto Moerbeek
2008-01-01- make arc4random*() functions thread safe. Use a custom spinlock functionKurt Miller
instead of the generic pthread macros since free(3) uses __arc4_getbyte() when freeing small sized allocations and the generic pthread macros call malloc(3). - eliminate passing pointers to a static variable with global scope (rs) for additional code clarity and reduction. - shlib minor bumps for libc and libpthread due to new functions. From andreas@ with some bits from me. okay tedu@ marc@ w/some spot checking from millert@
2007-11-19remove unused zero length file.Kurt Miller
2007-06-05_FD_LOCK/UNLOCK() is libpthread specific and not needed for librthread, soKurt Miller
isolate its usage to libpthread only and replace with generic non-static mutex support in the one place it is needed: - remove _FD_LOCK/UNLOCK from lseek and ftruncate in libc and make the functions weak so that libpthread can override with its own new versions that do the locking. - remove _thread_fd_lock/unlock() weak functions from libc and adjust libpthread for the change. - add generic _thread_mutex_lock/unlock/destroy() weak functions in libc to support non-static mutexes in libc and add libpthread and librthread implementations for them. libc can utilize non-static mutexes via the new _MUTEX_LOCK/UNLOCK/DESTROY() macros. Actually these new macros can support both static and non-static mutexes but currently only using them for non-static. - make opendir/closedir/readdir/readdir_r/seekdir/telldir() thread-safe for both thread libraries by using a non-static mutex in the struct _dirdesc (typedef DIR), utilizing it in the *dir functions and remove remaining and incorrect _FD_LOCK/UNLOCK() use in libc. - add comments to both thread libraries to indicate libc depends on the current implementation of static mutex initialization. suggested by marc@ - major bump libc and libpthread due to function removal, structure change and weak symbol conversions. okay marc@, tedu@
2006-02-22Avouid a race in atexit() handling by introducing a lock. ProblemOtto Moerbeek
originally reported by Gergely Kovacs; help from dhartmei@; ok tedu@ millert@
2004-06-07major bump to libc and libpthread to break the dependency of aMarco S Hyman
particular implementation of libpthread for libc. libc no longer needs pthread.h to compile. OK millert@, brad@, tedu@
2002-11-05thread safe libc -- 2nd try. OK miod@, millert@Marco S Hyman
Thanks to miod@ for m68k and vax fixes
2002-11-03back out previous patch.. there are still some vax/m68k issuesMarco S Hyman
2002-11-03libc changes for thread safety. Tested on:Marco S Hyman
alpha (millert@), i386 (marc@), m68k (millert@ and miod@), powerpc (drahn@ and dhartmei@), sparc (millert@ and marc@), sparc64 (marc@), and vax (millert@ and miod@). Thanks to millert@, miod@, and mickey@ for fixes along the way.
2001-09-04put changes back, this time ALL the files.Federico G. Schwindt
2001-08-30Back out fgsch@'s tree breaking commits.Todd T. Fries
Test next time, ok?
2001-08-30fix some const warningsFederico G. Schwindt
2000-01-14malloc lock helpersDavid Leonard
2000-01-06rename thread_storage to unithread_storage to avoid object name conflictDavid Leonard
2000-01-06thread specific storage and fd locking for single-threaded libc (ie, no-ops)David Leonard