Another pipe-related problem?

Henry S. Thompson
Tue Nov 9 14:47:26 GMT 2021

[private reply -- it's not exactly a private repo, but it's really not
 ready for prime-time with users expecting to be able to raise issues

Ken Brown writes:

> ...
> I was aware that the bitbucket repo didn't exist, because I tried to get the
> sources there.  But I didn't know about the fork.  Please point me to it, or
> just make a tarball available to me somehow.

>> ...

> I'll have to reproduce the hang myself in order to test this (or
> maybe you could test it), but I now have a new guess: If the read
> call above keeps failing with EINTR, then we're in an infinite loop.

> This could happen because of the following code in
> fhandler_pipe::raw_read:
>   DWORD waitret = cygwait (read_mtx, timeout);
>   switch (waitret)
>     {
>     case WAIT_OBJECT_0:
>       break;
>     case WAIT_TIMEOUT:
>       set_errno (EAGAIN);
>       len = (size_t) -1;
>       return;
>     default:
>       set_errno (EINTR);
>       len = (size_t) -1;
>       return;
>     }

Let's wait and see what Takashi says -- I see from github blame that
was introduced between 3.2 and 3.3.0, so certainly _could_ be the
culprit.  I've never tried to build my own Cygwin...


       Henry S. Thompson, School of Informatics, University of Edinburgh
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 650-4587, e-mail:
 [mail from me _always_ has a .sig like this -- mail without it is forged spam]

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

More information about the Cygwin mailing list