NetBSD/lib/libpthread
chuck f4e3e7fe3b sigtimedwait: if we collect a queued signal via pt_siglist, do not
forget to clear it out of pt_siglist, otherwise we will keep getting
it over and over again.   fixes a problem introduced in rev 1.43.

problem observed with mysqld where sending it a SIGHUP after it has
set an alarm (e.g. due to some package like rt3 using it) caused the
signal handler thread to go into a tight loop (collecting a SIGALRM
[via sigwait() in mysqld.cc] that would not go away due to the above
issue).   mysqld appears to get a SIGHUP when /etc/rc exits, so it
can go into this tight loop after a reboot (but not if you restart
it by hand).   the bad sequence is:
	/etc/rc runs:
		- starts mysqld
		- starts web server with rt3 fastcgi starts
		- fastcgi/rt3 talks to mysqld (causing it to set an alarm)
		- /etc/rc exits, SIGHUP goes to mysqld
		- mysqld catches SIGHUP, signal handler thread gets
			stuck in loop (database continues to operate, slowly).

you can also trigger the problem by sending mysqld a SIGHUP by hand after
you've caused it to set an alarm by connecting to it.
2006-06-12 16:45:14 +00:00
..
arch Instead of using hard-coded values for various registers, get them from the 2006-03-29 22:55:15 +00:00
Makefile include libc after our own files to fix ports that have 2 assym.h's. One 2005-12-13 22:07:20 +00:00
TODO
debuglog.c
pthread.3 Document PTHREAD_CONCURRENCY, ack by wiz@. 2005-02-01 11:38:27 +00:00
pthread.c There is no point in using the internal sigprocmask() to initialize 2006-04-24 18:39:36 +00:00
pthread.h Add restrict qualifiers to <pthread.h> function arguments. 2005-03-21 17:55:07 +00:00
pthread_alarms.c Coverity CID 882: Avoid NULL deref. 2006-03-19 23:01:03 +00:00
pthread_attr.3 Add restrict qualifiers to <pthread.h> function arguments. 2005-03-21 17:55:07 +00:00
pthread_attr.c pthread_attr_getschedpolicy() wasn't setting the return buffer at all. 2005-09-21 15:27:14 +00:00
pthread_attr_setcreatesuspend_np.3
pthread_barrier.c
pthread_barrier_destroy.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_barrier_init.3 Fix various spelling errors. 2005-06-17 18:07:06 +00:00
pthread_barrier_wait.3 New sentence, new line. 2005-06-17 18:23:52 +00:00
pthread_barrierattr.3 Fix various spelling errors. 2005-06-17 18:07:06 +00:00
pthread_cancel.3
pthread_cancelstub.c XXX: Work around libpthread's "intimate" connection with libc. 2005-09-13 02:45:38 +00:00
pthread_cleanup_push.3
pthread_cond.c gettimeofday();TIMEVAL_TO_TIMESPEC(); is exactly equivalent to 2005-01-06 17:33:36 +00:00
pthread_cond_broadcast.3 Fix various spelling errors. 2005-06-17 18:07:06 +00:00
pthread_cond_destroy.3
pthread_cond_init.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_cond_wait.3 Add restrict qualifiers to <pthread.h> function arguments. 2005-03-21 17:55:07 +00:00
pthread_condattr.3 Fix various spelling errors. 2005-06-17 18:07:06 +00:00
pthread_create.3 Add restrict qualifiers to <pthread.h> function arguments. 2005-03-21 17:55:07 +00:00
pthread_debug.c
pthread_debug.h
pthread_detach.3
pthread_equal.3
pthread_exit.3
pthread_getspecific.3
pthread_int.h starting the pthread library (ie. calling pthread__start()) before 2005-10-19 02:15:03 +00:00
pthread_join.3
pthread_key_create.3
pthread_key_delete.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_kill.3
pthread_lock.c Lint warning police -- don't use `//' for comments in C code. 2005-03-17 17:23:21 +00:00
pthread_mutex.c starting the pthread library (ie. calling pthread__start()) before 2005-10-19 02:15:03 +00:00
pthread_mutex_destroy.3
pthread_mutex_init.3 Add restrict qualifiers to <pthread.h> function arguments. 2005-03-21 17:55:07 +00:00
pthread_mutex_lock.3
pthread_mutex_unlock.3
pthread_mutexattr.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_once.3
pthread_queue.h
pthread_run.c Replace the even-odd test for incrementing unblockgen with a simple 2005-01-06 17:40:22 +00:00
pthread_rwlock.c starting the pthread library (ie. calling pthread__start()) before 2005-10-19 02:15:03 +00:00
pthread_rwlock_destroy.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_rwlock_init.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_rwlock_rdlock.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_rwlock_unlock.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_rwlock_wrlock.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_rwlockattr.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_sa.c Lint warning police -- don't use `//' for comments in C code. 2005-03-17 17:23:21 +00:00
pthread_schedparam.3 Add restrict qualifiers to <pthread.h> function arguments. 2005-03-21 17:55:07 +00:00
pthread_self.3
pthread_setspecific.3
pthread_sig.c sigtimedwait: if we collect a queued signal via pt_siglist, do not 2006-06-12 16:45:14 +00:00
pthread_sigmask.3 pthread_sigmask(): Add restrict qualifier to set, oset args. 2006-01-07 20:10:29 +00:00
pthread_sleep.c Avoid passing along a timespec with a negative number of seconds if 2005-04-19 16:38:57 +00:00
pthread_specific.c
pthread_spin_destroy.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_spin_init.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_spin_lock.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_spin_unlock.3 New sentence, new line. 2005-06-17 18:26:53 +00:00
pthread_stack.c - do PTHREAD_MLOCK_KLUDGE in pthread__stackid_setup, rather than callers, 2006-02-12 11:41:53 +00:00
pthread_suspend_np.3
pthread_testcancel.3
pthread_tsd.c
pthread_types.h
res_state.c
sched.c Change the sched_*() functions to return -1 and set errno to ENOSYS 2005-10-09 11:17:28 +00:00
sched_yield.3 Grammar improvements. 2004-12-15 16:37:58 +00:00
sem.c starting the pthread library (ie. calling pthread__start()) before 2005-10-19 02:15:03 +00:00
shlib_version Interpose cancellation points in pollts() and pselect(), bringing us 2005-03-18 11:23:44 +00:00