This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug nptl/18109] New: PI futexes can also have FUTEX_OWNER_DIED set
- From: "brian at peloton-tech dot com" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Wed, 11 Mar 2015 00:20:28 +0000
- Subject: [Bug nptl/18109] New: PI futexes can also have FUTEX_OWNER_DIED set
- Auto-submitted: auto-generated
https://sourceware.org/bugzilla/show_bug.cgi?id=18109
Bug ID: 18109
Summary: PI futexes can also have FUTEX_OWNER_DIED set
Product: glibc
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: nptl
Assignee: unassigned at sourceware dot org
Reporter: brian@peloton-tech.com
CC: drepper.fsp at gmail dot com
Created attachment 8183
--> https://sourceware.org/bugzilla/attachment.cgi?id=8183&action=edit
simplified test case
I can reliably trigger an assertion failure in nptl/pthread_mutex_lock.c by
having a thread die with a PTHREAD_PRIO_INHERIT mutex held. A simplified test
case is attached.
$ gcc -pthread mutex_test.c && ./a.out
a.out: pthread_mutex_lock.c:321: __pthread_mutex_lock_full: Assertion `robust
|| (oldval & 0x40000000) == 0' failed.
Aborted
$ uname -a
Linux master 3.2.0-4-amd64 #1 SMP Debian 3.2.65-1+deb7u1 x86_64 GNU/Linux
This behavior from the kernel looks deliberate. I'm not sure if the fix is just
removing the assert (and an identical one in nptl/pthread_mutex_timedlock.c) or
if some of the other logic in nptl/pthread_mutex_*lock.c also needs to be fixed
to handle this correctly.
--
You are receiving this mail because:
You are on the CC list for the bug.