freebsd-src/lib/libpthread/thread
Daniel Eischen 47c1571785 Change a "while {}" loop to a "do {} while" to allow it to be
executed at least once, fixing pthread_mutex_lock() for recursive
mutex lock attempts.

Correctly set a threads signal mask while it is executing a signal
handler.  The mask should be the union of its current mask, the
signal being handled, and the mask from the signal action.

Reported by: Dan Nelson <dnelson@emsphone.com>

MFC Candidate
2000-11-20 13:12:44 +00:00
..
Makefile.inc Add thread-safe wrapper for fpathconf(2) syscall. 2000-09-19 18:01:03 +00:00
thr_aio_suspend.c Change my email address in the copyright notices for the sake of consistency 2000-07-18 01:38:19 +00:00
thr_attr_destroy.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_attr_getdetachstate.c Fixed missing consts for function parameters, so that the code matches 2000-05-11 15:57:17 +00:00
thr_attr_getinheritsched.c add pthread_cancel, obtained from OpenBSD. 1999-11-28 05:38:13 +00:00
thr_attr_getschedparam.c add pthread_cancel, obtained from OpenBSD. 1999-11-28 05:38:13 +00:00
thr_attr_getschedpolicy.c add pthread_cancel, obtained from OpenBSD. 1999-11-28 05:38:13 +00:00
thr_attr_getscope.c add pthread_cancel, obtained from OpenBSD. 1999-11-28 05:38:13 +00:00
thr_attr_getstackaddr.c Fixed missing consts for function parameters, so that the code matches 2000-05-11 15:57:17 +00:00
thr_attr_getstacksize.c Fixed missing consts for function parameters, so that the code matches 2000-05-11 15:57:17 +00:00
thr_attr_init.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_attr_setcreatesuspend_np.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_attr_setdetachstate.c Track libc's three-tier symbol naming. libc_r must currently implement 2000-01-12 09:28:58 +00:00
thr_attr_setinheritsched.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_attr_setschedparam.c Implement zero system call thread switching. Performance of 2000-10-13 22:12:32 +00:00
thr_attr_setschedpolicy.c Add missing man pages. Fix various compliance bugs, mostly having to do with 2000-05-02 06:51:40 +00:00
thr_attr_setscope.c Add missing man pages. Fix various compliance bugs, mostly having to do with 2000-05-02 06:51:40 +00:00
thr_attr_setstackaddr.c Track libc's three-tier symbol naming. libc_r must currently implement 2000-01-12 09:28:58 +00:00
thr_attr_setstacksize.c Track libc's three-tier symbol naming. libc_r must currently implement 2000-01-12 09:28:58 +00:00
thr_cancel.c pthread_mutex_lock(), pthread_cond_trywait(), and pthread_cond_wait() are 2000-06-14 17:17:41 +00:00
thr_clean.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_close.c Simplify sytem call renaming. Instead of _foo() <-- _libc_foo <-- foo(), 2000-01-27 23:07:25 +00:00
thr_cond.c Fix a bug where a statically initialized condition variable 2000-11-16 22:50:33 +00:00
thr_condattr_destroy.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_condattr_init.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_creat.c Change my email address in the copyright notices for the sake of consistency 2000-07-18 01:38:19 +00:00
thr_create.c Don't needlessly poll file descriptors when there are no 2000-11-09 05:08:26 +00:00
thr_detach.c Don't needlessly poll file descriptors when there are no 2000-11-09 05:08:26 +00:00
thr_equal.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_exit.c Don't needlessly poll file descriptors when there are no 2000-11-09 05:08:26 +00:00
thr_fcntl.c Use _fcntl() (not fcntl()) inside of fcntl(). 2000-01-28 22:10:27 +00:00
thr_find_thread.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_fork.c Implement zero system call thread switching. Performance of 2000-10-13 22:12:32 +00:00
thr_fsync.c Simplify sytem call renaming. Instead of _foo() <-- _libc_foo <-- foo(), 2000-01-27 23:07:25 +00:00
thr_gc.c Implement zero system call thread switching. Performance of 2000-10-13 22:12:32 +00:00
thr_getprio.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_getschedparam.c Implement zero system call thread switching. Performance of 2000-10-13 22:12:32 +00:00
thr_info.c Don't needlessly poll file descriptors when there are no 2000-11-09 05:08:26 +00:00
thr_init.c When entering the scheduler from the signal handler, tell 2000-11-14 20:00:19 +00:00
thr_join.c Don't needlessly poll file descriptors when there are no 2000-11-09 05:08:26 +00:00
thr_kern.c Delete 4 lines of misleading/incorrect comments. 2000-11-16 19:15:56 +00:00
thr_kill.c Fixes for signal handling: 1999-12-17 00:56:36 +00:00
thr_mattr_init.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_mattr_kind_np.c Add missing man pages. Fix various compliance bugs, mostly having to do with 2000-05-02 06:51:40 +00:00
thr_msync.c Simplify sytem call renaming. Instead of _foo() <-- _libc_foo <-- foo(), 2000-01-27 23:07:25 +00:00
thr_multi_np.c Track libc's three-tier symbol naming. libc_r must currently implement 2000-01-12 09:28:58 +00:00
thr_mutex_prioceiling.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_mutex_protocol.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_mutex.c Change a "while {}" loop to a "do {} while" to allow it to be 2000-11-20 13:12:44 +00:00
thr_mutexattr_destroy.c Track libc's three-tier symbol naming. libc_r must currently implement 2000-01-12 09:28:58 +00:00
thr_nanosleep.c Simplify sytem call renaming. Instead of _foo() <-- _libc_foo <-- foo(), 2000-01-27 23:07:25 +00:00
thr_once.c Call _thread_init() from pthread_once() if it has not already been called. 2000-07-21 09:31:13 +00:00
thr_open.c Simplify sytem call renaming. Instead of _foo() <-- _libc_foo <-- foo(), 2000-01-27 23:07:25 +00:00
thr_pause.c Change my email address in the copyright notices for the sake of consistency 2000-07-18 01:38:19 +00:00
thr_poll.c Use __strong_reference() instead of __weak_reference() to assure that the 2000-01-29 22:53:55 +00:00
thr_priority_queue.c Implement zero system call thread switching. Performance of 2000-10-13 22:12:32 +00:00
thr_private.h Fix MD macros to work for alpha. Without this fix, threads under alpha 2000-11-20 01:57:19 +00:00
thr_read.c Simplify sytem call renaming. Instead of _foo() <-- _libc_foo <-- foo(), 2000-01-27 23:07:25 +00:00
thr_readv.c Use __strong_reference() instead of __weak_reference() to assure that the 2000-01-29 22:53:55 +00:00
thr_resume_np.c pthread_mutex_lock(), pthread_cond_trywait(), and pthread_cond_wait() are 2000-06-14 17:17:41 +00:00
thr_rwlock.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_rwlockattr.c Track libc's three-tier symbol naming. libc_r must currently implement 2000-01-12 09:28:58 +00:00
thr_select.c Use __strong_reference() instead of __weak_reference() to assure that the 2000-01-29 22:53:55 +00:00
thr_self.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_sem.c Implement zero system call thread switching. Performance of 2000-10-13 22:12:32 +00:00
thr_seterrno.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_setprio.c Implement continuations to correctly handle [sig|_]longjmp() inside of a 2000-01-19 07:04:50 +00:00
thr_setschedparam.c Implement zero system call thread switching. Performance of 2000-10-13 22:12:32 +00:00
thr_sig.c Change a "while {}" loop to a "do {} while" to allow it to be 2000-11-20 13:12:44 +00:00
thr_sigaction.c Don't needlessly poll file descriptors when there are no 2000-11-09 05:08:26 +00:00
thr_sigmask.c Don't needlessly poll file descriptors when there are no 2000-11-09 05:08:26 +00:00
thr_sigpending.c Use __strong_reference() instead of __weak_reference() to assure that the 2000-01-29 22:53:55 +00:00
thr_sigprocmask.c Implement zero system call thread switching. Performance of 2000-10-13 22:12:32 +00:00
thr_sigsuspend.c Simplify sytem call renaming. Instead of _foo() <-- _libc_foo <-- foo(), 2000-01-27 23:07:25 +00:00
thr_sigwait.c Make pthread_kill() know about temporary signal handlers installed 2000-10-25 11:46:07 +00:00
thr_single_np.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_sleep.c Change my email address in the copyright notices for the sake of consistency 2000-07-18 01:38:19 +00:00
thr_spec.c -Wall and minor style(9) cleanups. 1999-12-28 18:13:04 +00:00
thr_spinlock.c Simplify sytem call renaming. Instead of _foo() <-- _libc_foo <-- foo(), 2000-01-27 23:07:25 +00:00
thr_suspend_np.c pthread_mutex_lock(), pthread_cond_trywait(), and pthread_cond_wait() are 2000-06-14 17:17:41 +00:00
thr_switch_np.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
thr_system.c Change my email address in the copyright notices for the sake of consistency 2000-07-18 01:38:19 +00:00
thr_tcdrain.c Change my email address in the copyright notices for the sake of consistency 2000-07-18 01:38:19 +00:00
thr_vfork.c In libc_r, rename vfork syscall to _thread_sys_vfork and make vfork an alias 1998-09-12 22:03:20 +00:00
thr_wait4.c #include <sys/types.h> 2000-10-15 20:04:09 +00:00
thr_wait.c Change my email address in the copyright notices for the sake of consistency 2000-07-18 01:38:19 +00:00
thr_waitpid.c Change my email address in the copyright notices for the sake of consistency 2000-07-18 01:38:19 +00:00
thr_write.c Implement zero system call thread switching. Performance of 2000-10-13 22:12:32 +00:00
thr_writev.c Use __strong_reference() instead of __weak_reference() to assure that the 2000-01-29 22:53:55 +00:00
thr_yield.c Implement zero system call thread switching. Performance of 2000-10-13 22:12:32 +00:00