freebsd-dev/lib/libpthread
David Xu 3d10572d1a As comments in _mutex_lock_backout state, only current thread
can clear the pointer to mutex, not the thread doing mutex
handoff. Because _mutex_lock_backout does not hold scheduler
lock while testing THR_FLAGS_IN_SYNCQ and then reading mutex
pointer, it is possible mutex owner begin to unlock and
handoff the mutex to the current thread, and mutex pointer
will be cleared to NULL before current thread reading it, so
current thread will end up with deferencing a NULL pointer,
Fix the race by making mutex waiters to clear their mutex pointers.
While I am here, also save inherited priority in mutex for
PTHREAD_PRIO_INERIT mutex in mutex_trylock_common just like what
we did in mutex_lock_common.
2003-09-24 12:52:57 +00:00
..
arch Fix FPU state restoring bug by jumping to right position. 2003-09-22 14:34:02 +00:00
man Get rid of duplicates. 2003-09-14 13:41:59 +00:00
support The caller is expected to set up PIC register corectly before 2003-09-05 18:08:19 +00:00
sys Don't assume sizeof(long) = sizeof(int) on x86; use int 2003-09-03 17:56:26 +00:00
test Don't run verify directly as that would require the perl script to 2003-08-13 03:59:18 +00:00
thread As comments in _mutex_lock_backout state, only current thread 2003-09-24 12:52:57 +00:00
Makefile Rethink the way thr_libc.So is generated. Relying on GCC to extract 2003-09-02 19:37:11 +00:00
pthread.map Add code to support pthread spin lock. 2003-09-09 06:57:51 +00:00