CygPerl hangs opening FIFO after fork (in both parent&child)

Christopher Faylor
Fri Jun 23 04:54:00 GMT 2006

On Thu, Jun 22, 2006 at 06:53:38PM -0700, Brian Dessent wrote:
>Linda Walsh wrote:
>> The attached test case is simple and fairly short.  It does not
>> depend on File::BOM (and has none of the code from it).
>> It's only dependency (other than perl) is the POSIX module,
>> where, from, the "fifo" command is taken.
>This appears to be a deadlock in the Cygwin DLL when both the reader and
>writer end of a fifo tries to open the file at the same time (or nearly
>the same time.)  They end up signaling each other to ask about the other
>end of the pipe, and hang there.  It has nothing to do with perl or
>fork, as far as I can tell -- the attached C testcase will work fine if
>the reader end sleeps briefly to ensure the opening order.   It's just a
>classic race condition somewhere.

Yep.  It's a deadlock which uncovered a race.

It should be fixed in the next floor wax available at:

And thanks for the test case which illustrated the problem.


Unsubscribe info:
Problem reports:

More information about the Cygwin mailing list