Date: Thu, 8 Jan 2004 07:37:09 -0800 (PST) From: Daniel Eischen <deischen@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/lib/libpthread/thread thr_create.c thr_private.h thr_rwlock.c Message-ID: <200401081537.i08Fb9rW030254@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
deischen 2004/01/08 07:37:09 PST
FreeBSD src repository
Modified files:
lib/libpthread/thread thr_create.c thr_private.h thr_rwlock.c
Log:
Add a simple work-around for deadlocking on recursive read locks
on a rwlock while there are writers waiting. We normally favor
writers but when a reader already has at least one other read lock,
we favor the reader. We don't track all the rwlocks owned by a
thread, nor all the threads that own a rwlock -- we just keep
a count of all the read locks owned by a thread.
PR: 24641
Revision Changes Path
1.53 +1 -0 src/lib/libpthread/thread/thr_create.c
1.112 +4 -1 src/lib/libpthread/thread/thr_private.h
1.14 +81 -47 src/lib/libpthread/thread/thr_rwlock.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200401081537.i08Fb9rW030254>
