[Bug 254995] pthread_cond_timedwait() returns EDEADLK

From: <bugzilla-noreply_at_freebsd.org>
Date: Fri, 20 Aug 2021 08:37:56 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=254995

--- Comment #8 from nkoch@demig.de ---
As a temporary workaround I changed my code to handle EDEADLK from
pthread_cond_timedwait() like ETIMEDOUT.
Now I've got a runtime exception from within libthr:

Fatal error 'mutex 0x6531800 own 0x1871e is not on list 0x0 0x0' at line 141 in
file /usr/src/lib/libthr/thread/thr_mutex.c (errno = 0)

This comes from a different cond/mutex pair when calling pthread_mutex_unlock()
after a pthread_cond_timedwait().

#0  0x0613058b in thr_kill () from /lib/libc.so.7
#1  0x0612ea8b in raise () from /lib/libc.so.7
#2  0x060ad0cf in abort () from /lib/libc.so.7
#3  0x05fbfb0d in ?? () from /lib/libthr.so.3
#4  0x05fb9fb4 in ?? () from /lib/libthr.so.3
#5  0x05fb9a9e in ?? () from /lib/libthr.so.3
#6  0x05fb9993 in pthread_mutex_unlock () from /lib/libthr.so.3

-- 
You are receiving this mail because:
You are the assignee for the bug.