Decrease rdlock count only when thread unlocked a reader lock.

MFC after:	3 days
This commit is contained in:
David Xu 2010-08-26 07:09:48 +00:00
parent b86e178f05
commit 6b932eca79

View File

@ -149,8 +149,8 @@ _thr_rtld_lock_release(void *lock)
state = l->lock.rw_state;
if (_thr_rwlock_unlock(&l->lock) == 0) {
curthread->rdlock_count--;
if ((state & URWLOCK_WRITE_OWNER) == 0) {
curthread->rdlock_count--;
THR_CRITICAL_LEAVE(curthread);
} else {
_thr_signal_unblock(curthread);