cvs commit: src/include pthread_np.h src/lib/libthr pthread.map
src/lib/libthr/thread thr_mutex.c
Attilio Rao
attilio at freebsd.org
Mon Feb 4 03:18:39 PST 2008
2008/2/4, Dag-Erling Smørgrav <des at des.no>:
> Dag-Erling Smorgrav <des at FreeBSD.org> writes:
> > Log:
> > Add pthread_mutex_islocked_np(), a cheap way to verify that a mutex is
> > locked. This is intended primarily to support the userland equivalent
> > of the various *_ASSERT_LOCKED() macros we have in the kernel.
>
>
> I'm having second thoughts about this one. There is a significant risk
> of false positives if the mutex is currently locked by another thread.
> I'm wondering whether to a) change the implementation so it only returns
> true if the mutex is owned by the current thread, or b) change the
> interface so you can specify a specific thread, or NULL for "any".
Please don't do the latter.
Semantically the right thing to do here is to assert if the curthread
owns the lock or not. Any lock should not be interested on what is the
state in regard of other locks.
Attilio
--
Peace can only be achieved by understanding - A. Einstein
More information about the cvs-src
mailing list