freebsd-dev/lib/libpthread/thread
Daniel Eischen b8bbeeda02 After forking and initializing the library to single-threaded
mode (where the forked thread is the one and only thread and
is marked as system scope), set the system scope flag before
initializing the signal mask.  This prevents trying to use
internal locks that haven't yet been initialized.

Reported by:	Dan Nelson <dnelson at allantgroup.com>
Reviewed by:	davidxu
2004-04-08 23:16:21 +00:00
..
Makefile.inc Implement sigaltstack() as per-threaded. Current only scope process thread 2003-12-29 23:21:09 +00:00
thr_accept.c accept() returns a file descriptor when it succeeds which is very 2003-12-09 23:40:27 +00:00
thr_aio_suspend.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_atfork.c Add pthread_atfork() source code. Dan forgot to commit this file. 2003-11-05 03:42:10 +00:00
thr_attr_destroy.c
thr_attr_get_np.c Avoid accessing user provided parameters in critical region. 2003-07-07 04:28:23 +00:00
thr_attr_getdetachstate.c
thr_attr_getguardsize.c
thr_attr_getinheritsched.c
thr_attr_getschedparam.c
thr_attr_getschedpolicy.c
thr_attr_getscope.c
thr_attr_getstack.c
thr_attr_getstackaddr.c
thr_attr_getstacksize.c
thr_attr_init.c Cleanup thread accounting. Don't reset a threads timeslice 2003-07-18 02:46:55 +00:00
thr_attr_setcreatesuspend_np.c pthread API should return error code in return value not in errno. 2003-09-25 13:53:49 +00:00
thr_attr_setdetachstate.c
thr_attr_setguardsize.c Respect POSIX specification, a value return from pthread_attr_getguardsize 2003-09-14 22:39:44 +00:00
thr_attr_setinheritsched.c Check invalid parameter and return EINVAL. 2003-09-14 22:28:13 +00:00
thr_attr_setschedparam.c Revamp libpthread so that it has a chance of working in an SMP 2003-04-18 05:04:16 +00:00
thr_attr_setschedpolicy.c
thr_attr_setscope.c If user is seting scope process flag, clear PTHREAD_SCOPE_SYSTEM bit 2003-09-14 22:32:28 +00:00
thr_attr_setstack.c
thr_attr_setstackaddr.c
thr_attr_setstacksize.c
thr_autoinit.c Revamp libpthread so that it has a chance of working in an SMP 2003-04-18 05:04:16 +00:00
thr_barrier.c Add code to support barrier synchronous object and implement 2003-09-04 14:06:43 +00:00
thr_barrierattr.c Add code to support barrier synchronous object and implement 2003-09-04 14:06:43 +00:00
thr_cancel.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_clean.c Revamp libpthread so that it has a chance of working in an SMP 2003-04-18 05:04:16 +00:00
thr_close.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_concurrency.c Fixed a misspelling of 0 as NULL. 2004-03-14 05:27:26 +00:00
thr_cond.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_condattr_destroy.c
thr_condattr_init.c Revamp libpthread so that it has a chance of working in an SMP 2003-04-18 05:04:16 +00:00
thr_connect.c accept() returns a file descriptor when it succeeds which is very 2003-12-09 23:40:27 +00:00
thr_creat.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_create.c Add a simple work-around for deadlocking on recursive read locks 2004-01-08 15:37:09 +00:00
thr_detach.c Move idle kse wakeup to outside of regions where locks are held. 2003-07-23 02:11:07 +00:00
thr_equal.c
thr_exit.c 1. Allocating and freeing lock related resource in _thr_alloc and _thr_free 2003-09-14 22:52:16 +00:00
thr_fcntl.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_find_thread.c o Eliminate upcall for PTHREAD_SYSTEM_SCOPE thread, now it 2003-07-17 23:02:30 +00:00
thr_fork.c Don't declare the malloc lock; use the declaration provided in libc. 2003-11-05 18:18:45 +00:00
thr_fsync.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_getprio.c
thr_getschedparam.c Avoid accessing user provided parameters in critical region. 2003-07-07 04:28:23 +00:00
thr_info.c Print waitset correctly. 2003-09-22 00:40:23 +00:00
thr_init.c Remove surplus mmap() call for stack guard page in init_private, it is done 2003-11-29 14:10:02 +00:00
thr_join.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_kern.c After forking and initializing the library to single-threaded 2004-04-08 23:16:21 +00:00
thr_kill.c o Use a daemon thread to monitor signal events in kernel, if pending 2003-06-28 09:55:02 +00:00
thr_main_np.c Revamp libpthread so that it has a chance of working in an SMP 2003-04-18 05:04:16 +00:00
thr_mattr_init.c Revamp libpthread so that it has a chance of working in an SMP 2003-04-18 05:04:16 +00:00
thr_mattr_kind_np.c
thr_msync.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_multi_np.c
thr_mutex_prioceiling.c Avoid accessing user provided parameters in critical region. 2003-07-07 04:28:23 +00:00
thr_mutex_protocol.c Revamp libpthread so that it has a chance of working in an SMP 2003-04-18 05:04:16 +00:00
thr_mutex.c Return EPERM if mutex owner is not current thread but it tries to 2004-01-17 03:09:57 +00:00
thr_mutexattr_destroy.c
thr_nanosleep.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_once.c Original pthread_once code has memory leak if pthread_once_t is used in 2003-09-09 22:38:12 +00:00
thr_open.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_pause.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_poll.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_printf.c style cleanup: Remove duplicate $FreeBSD$ tags. 2004-02-10 20:42:33 +00:00
thr_priority_queue.c o Don't add a scope system thread's KSE to the list of available 2003-04-28 23:56:12 +00:00
thr_private.h Provide a userland version of non-pshared semaphores and add cancellation 2004-02-03 05:50:07 +00:00
thr_pselect.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_pspinlock.c Libpthread uses the convention that all of its (non-weak) symbols 2003-11-04 19:56:12 +00:00
thr_raise.c Override libc function raise(), in threading mode, raise() will 2003-07-19 05:25:49 +00:00
thr_read.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_readv.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_resume_np.c Move idle kse wakeup to outside of regions where locks are held. 2003-07-23 02:11:07 +00:00
thr_rtld.c style(9) 2003-11-05 18:19:24 +00:00
thr_rwlock.c Add a simple work-around for deadlocking on recursive read locks 2004-01-08 15:37:09 +00:00
thr_rwlockattr.c
thr_select.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_self.c Revamp libpthread so that it has a chance of working in an SMP 2003-04-18 05:04:16 +00:00
thr_sem.c Add cancellation point to sem_wait() and sem_timedwait() for pshared 2004-02-06 15:20:56 +00:00
thr_seterrno.c Revamp libpthread so that it has a chance of working in an SMP 2003-04-18 05:04:16 +00:00
thr_setprio.c
thr_setschedparam.c Add an i386-specifc hack to always set %gs. There still seems 2003-04-21 04:02:56 +00:00
thr_sig.c Kernel now supports per-thread sigaltstack, follow the change to 2004-01-03 02:40:27 +00:00
thr_sigaction.c If syscall failed, restore old sigaction and return error to thread. 2003-09-25 06:23:40 +00:00
thr_sigaltstack.c Return error code in errno, not in return value. 2004-01-02 00:38:42 +00:00
thr_sigmask.c pthread api should return error code in return value, not in errno. 2003-09-18 12:19:28 +00:00
thr_sigpending.c Treat initial thread as scope system thread when KSE mode is not activated 2003-08-18 03:58:29 +00:00
thr_sigprocmask.c Treat initial thread as scope system thread when KSE mode is not activated 2003-08-18 03:58:29 +00:00
thr_sigsuspend.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_sigwait.c Fix a POSIX conformance bug. POSIX says sigwait should return error number 2004-03-17 02:12:19 +00:00
thr_single_np.c
thr_sleep.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_spec.c Add back a loop for up to PTHREAD_DESTRUCTOR_ITERATIONS to 2003-08-20 02:34:14 +00:00
thr_spinlock.c Use mutex instead of low level thread lock to implement spinlock, this 2003-12-09 02:37:40 +00:00
thr_stack.c Respect POSIX specification, a value return from pthread_attr_getguardsize 2003-09-14 22:39:44 +00:00
thr_suspend_np.c Fix suspend and resume. 2003-05-04 16:17:01 +00:00
thr_switch_np.c Revamp libpthread so that it has a chance of working in an SMP 2003-04-18 05:04:16 +00:00
thr_system.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_tcdrain.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_vfork.c
thr_wait4.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_wait.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_waitpid.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_write.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_writev.c Rename _thr_enter_cancellation_point to _thr_cancel_enter, rename 2003-12-09 02:20:56 +00:00
thr_yield.c Treat initial thread as scope system thread when KSE mode is not activated 2003-08-18 03:58:29 +00:00