Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=947444
Bug ID: 947444 Summary: PerlIO dead-locks with threaded fork Product: Fedora Version: 18 Component: perl Severity: unspecified Priority: unspecified Assignee: mmaslano@redhat.com Reporter: ppisar@redhat.com QA Contact: extras-qa@fedoraproject.org CC: cweyl@alumni.drew.edu, iarnell@gmail.com, jplesnik@redhat.com, kasal@ucw.cz, lkundrak@v3.sk, mmaslano@redhat.com, perl-devel@lists.fedoraproject.org, ppisar@redhat.com, psabata@redhat.com, rc040203@freenet.de, tcallawa@redhat.com Category: ---
Created attachment 730746 --> https://bugzilla.redhat.com/attachment.cgi?id=730746&action=edit Test case
As reported to upstream, there is a possible dead lock when using fork from threads and PerlIO https://rt.perl.org/rt3/Public/Bug/Display.html?id=106212.
This has been fixed in commit:
From 4da80956418bbe1fdc23cad0b1cbb24cd7b87609 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Patrik=20H=C3=A4gglund?= patrik.h.hagglund@ericsson.com Date: Sat, 2 Feb 2013 20:21:05 +0100 Subject: [PATCH] PATCH [perl #106212] Add PL_perlio_mutex to atfork_lock/unlock
Using threads + fork() on Linux, and IO operations in the threads, the PL_perlio_mutex may be left in a locked state at the call of fork(), potentially leading to deadlock in the child process at subsequent IO operations. (Threads are pre-empted and not continued in the child process after the fork.)
Therefore, ensure that the PL_perlio_mutex is unlocked in the child process, right after fork(), by using atfork_lock/unlock.
(The RT text gives ways to reproduce the problem, but are not easily added to Perl's test suite)
Probably all Fedoras are affected.
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=947444
Petr Pisar ppisar@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Assignee|mmaslano@redhat.com |ppisar@redhat.com
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=947444
--- Comment #1 from Fedora Update System updates@fedoraproject.org --- perl-5.16.3-262.fc19 has been submitted as an update for Fedora 19. https://admin.fedoraproject.org/updates/perl-5.16.3-262.fc19
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=947444
--- Comment #2 from Fedora Update System updates@fedoraproject.org --- perl-5.16.3-242.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/perl-5.16.3-242.fc18
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=947444
Petr Pisar ppisar@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed In Version| |perl-5.16.3-270.fc20
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=947444
--- Comment #3 from Fedora Update System updates@fedoraproject.org --- perl-5.14.4-225.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/perl-5.14.4-225.fc17
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=947444
--- Comment #4 from Fedora Update System updates@fedoraproject.org --- perl-5.16.3-262.fc19, perl-Sys-Syslog-0.32-1.fc19 has been pushed to the Fedora 19 stable repository. If problems still persist, please make note of it in this bug report.
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=947444
--- Comment #5 from Fedora Update System updates@fedoraproject.org --- perl-5.16.3-242.fc18, perl-Sys-Syslog-0.32-1.fc18 has been pushed to the Fedora 18 stable repository. If problems still persist, please make note of it in this bug report.
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=947444
--- Comment #6 from Fedora Update System updates@fedoraproject.org --- perl-5.14.4-225.fc17 has been pushed to the Fedora 17 stable repository. If problems still persist, please make note of it in this bug report.
Product: Fedora https://bugzilla.redhat.com/show_bug.cgi?id=947444
Petr Pisar ppisar@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|MODIFIED |CLOSED Resolution|--- |ERRATA Last Closed| |2013-05-02 09:11:43
perl-devel@lists.fedoraproject.org