This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug nptl/21422] New: Deadlock in 2.25 pthread_cond_broadcast after process abort
- From: "michael.krasnyk at gmail dot com" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Sun, 23 Apr 2017 19:43:10 +0000
- Subject: [Bug nptl/21422] New: Deadlock in 2.25 pthread_cond_broadcast after process abort
- Auto-submitted: auto-generated
https://sourceware.org/bugzilla/show_bug.cgi?id=21422
Bug ID: 21422
Summary: Deadlock in 2.25 pthread_cond_broadcast after process
abort
Product: glibc
Version: unspecified
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: nptl
Assignee: unassigned at sourceware dot org
Reporter: michael.krasnyk at gmail dot com
CC: drepper.fsp at gmail dot com
Target Milestone: ---
Created attachment 10015
--> https://sourceware.org/bugzilla/attachment.cgi?id=10015&action=edit
Test for reproduction
Hi, in glibc 2.25 the attached test hangs in pthread_cond_broadcast. The test
code creates a shared mmapped file /tmp/test.mmap with a shared mutex and a
conditional variable. If the waiting process was aborted and restarted, the
signaling process hangs in pthread_cond_broadcast.
Correct behavior:
./a.out 1
./a.out 2 & ( sleep 1 ; ./a.out 3 )
Hangs on the third line in "./a.out 3" process with libc 2.25, but works with
2.24:
./a.out 1
./a.out 2 & p=$! ; ( sleep 1 ; kill -SIGABRT $p ; ./a.out 3 )
./a.out 2 & ( sleep 1 ; ./a.out 3 )
--
You are receiving this mail because:
You are on the CC list for the bug.