summaryrefslogtreecommitdiffstats
path: root/lib/libc_r/uthread (follow)
Commit message (Collapse)AuthorAgeFilesLines
* bye-bye libc_r sources.marc2003-01-20122-17236/+0
| | | | the sources have been moved (with history) to /usr/src/lib/libpthread
* return (func(...)) not needed when the current function and funcmarc2003-01-192-5/+11
| | | | | | are both void. The select call is a cancellation point per IEEE Std 1003.1-2001. This should fix a problem espie@ found in kde.
* add a debugging function not normally calledmarc2002-12-112-3/+63
|
* remove unused data member from pthread_cond.marc2002-12-081-2/+1
|
* get rid of compiler warningsmarc2002-11-123-6/+6
|
* kill two compiler warnings; ok marc@todd2002-11-081-4/+6
|
* Do not try to initialize entries in the fd table before the tablemarc2002-11-081-10/+1
| | | | is created.
* Add needed table of strong functions that override weak functionsmarc2002-11-072-22/+97
| | | | | | in libc so static linking works with -lpthreads. There is a (linker?) problem that still shows up with static -pthread, though. Solution to problem from freebsd.
* type func(...) -> type\nfunc(...) for function definitionsmarc2002-11-0712-24/+36
|
* thread safe libc -- 2nd try. OK miod@, millert@marc2002-11-051-30/+11
| | | | Thanks to miod@ for m68k and vax fixes
* test locks against _SPINLOCK_UNLOCKED, not 0. _SPINLOCK_UNLOCKED ismarc2002-11-041-4/+7
| | | | not zero on all arches
* back out previous patch.. there are still some vax/m68k issuesmarc2002-11-031-11/+30
|
* libc changes for thread safety. Tested on:marc2002-11-031-30/+11
| | | | | | | 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.
* Include string.h to get memcpy() prototype; OK marc@millert2002-11-021-1/+2
|
* removes duplicate functions and factor out common code so the needed (butmarc2002-10-303-480/+231
| | | | | | | | missing) _thread_fd_unlock_owned function can be added with minimal pain. The incorrect special handling of the stdio fds was also removed. Tested with the libc_r regression tests and the mysql regression tests. No complaints from any developers
* signal handling changes. This corrects several signalmarc2002-10-3011-243/+253
| | | | | | | handling errors in the threads library. Most of the libc_r regression tests are now ok. thread specific kill semantics are still not correct. No negative comments after posting to tech@ a week or so ago. siginfo test fails on sparc64 due to sparc64 oddity.
* Check for null pointer before deref in info output. Based uponmarc2002-10-212-9/+16
| | | | | a freebsd patch forwarded to me by millert@ (thanks!). Change also applied to uthread_info.c even though we do not use it
* handle the SA_RESETHAND flag.marc2002-10-071-2/+10
| | | | | Part of the prep for SA_SIGINFO support. With this change the new siginfo regression test will fail instead of loop on all arches.
* remove erroneous commentmarc2002-09-121-3/+2
|
* spelling; raj@cerias.purdue.eduderaadt2002-06-041-3/+3
|
* return EBUSY, not EWOULDBLOCK for error when calling thread would blockpvalchev2002-05-071-3/+3
| | | | for pthread_rwlock_wrlock & sie says Single Unix Specification; ok fgs
* Make sure calls to pthread_cancel() do not take effect if the targetpvalchev2002-05-071-3/+5
| | | | thread is already exiting, from archie@FreeBSD, ok fgs
* ANSI'fy.fgsch2002-03-071-10/+5
|
* From FreeBSD:fgsch2002-03-072-3/+6
| | | | | Properly clear the status of a join operation if the joining thread is canceled or the joinee is detached.
* account for the process signal mask when dealing with signals; testedfgsch2002-02-215-25/+99
| | | | a while ago by marc@ and brad@
* correct return values.fgsch2002-02-191-8/+6
|
* From FreeBSD:fgsch2002-02-191-2/+3
| | | | Prevent dup2(2) from closing internal libc_r pipe descriptors.
* Part one of userland __P removal. Done with a simple regexp with some minor hand editing to make comments line up correctly. Another pass is forthcoming that handles the cases that could not be done automatically.millert2002-02-161-4/+4
|
* remove old style init used by mips. uses _thread_init_constructor nowpefo2002-01-241-17/+2
|
* From FreeBSD:fgsch2002-01-231-199/+402
| | | | | | | o Use _get_curthread() instead of _thread_run. o Correctly deal with cancellations. o Add libc internal versions of pthread_mutex_lock() and pthread_mutex_trylock(), unused by now.
* Instead of ifdef around ENOTSUP, move it to pthread_private.h and makefgsch2002-01-196-28/+12
| | | | it EOPNOTSUPP.
* From FreeBSD: correct priority handling.fgsch2002-01-192-5/+9
|
* From FreeBSD: sem_XXX implementation; manpages comming in a bit.fgsch2002-01-182-1/+249
|
* when alloc'ing the ready queue, make it big enough.fgsch2002-01-171-2/+2
|
* Change 1st arg in pthread_attr_getdetachstate to const.fgsch2002-01-101-2/+3
|
* From FreeBSD: fix conversion from msec to timespec.fgsch2002-01-101-3/+3
|
* comment out the pending signals check by now; it was not suppose to befgsch2002-01-041-1/+3
| | | | there yet.
* fpathconf(2) returns long.fgsch2002-01-021-2/+2
|
* More changes from FreeBSD, including:fgsch2001-12-316-310/+296
| | | | | | | | | o Only poll file descriptors when needed. o Change the way timing is achieved, counting scheduling ticks instead of calculating the elapsed time via gettimeofday(). o Prevent an overflow when polling. o Use curthread instead of _thread_run. o Remove extra spaces; indent.
* call pthread_sigmask() instead of having the code twice.fgsch2001-12-301-47/+3
|
* From FreeBSD:fgsch2001-12-201-7/+5
| | | | | | When cancelling a thread while in a join operation, do not detach the target thread of the join operation. This allows the cancelled thread to detach the target thread in its cancellation handler.
* sync with freebsd.fgsch2001-12-201-71/+184
|
* More sync.fgsch2001-12-195-44/+123
|
* Allow the scheduler to return to the signal handler and the signalmarc2001-12-182-8/+19
| | | | | | handler to return instead of calling sigreturn directly. This works around an apparent bug in sparc sigreturn handling. ok fgs@ and noone else has bitched
* More sync with freebsd code; join related code this time.fgsch2001-12-1110-146/+216
|
* sync with freebsd.fgsch2001-12-081-2/+3
|
* Partially sync with FreeBSD; mostly pthread_cancel(3) related changes.fgsch2001-12-087-91/+140
| | | | make includes is needed in case you want to play.
* a better fix for recursive mutex.fgsch2001-11-121-16/+4
|
* This fixes the recursive mutex problem with pthreads.marc2001-11-121-2/+14
| | | | | | fgs@ says their is a better fix... if so he can back these changes out and apply his fix at his convenience. In the meanwhile we'll have mutexen that work.
* Fix problem found by espie (and other porters) wheremarc2001-11-091-1/+17
| | | | | | | | | | system(...) hangs forever. From a comment in the fix: * Note: a thread calling wait4 may have its state changed to waiting * until awakened by a signal. Also note that system(3), for example, * blocks SIGCHLD and calls waitpid (which calls wait4). If the process * started by system(3) doesn't finish before this function is called the * function will never awaken -- system(3) also ignores SIGINT and SIGQUIT.