Deadlock of the process tree when running make

Alexey Izbyshev izbyshev@ispras.ru
Mon Apr 11 10:10:15 GMT 2022


On 2022-04-11 11:35, Takashi Yano wrote:
> On Sun, 10 Apr 2022 23:49:29 +0300
> Alexey Izbyshev wrote:
>> 
>> Is it safe to create an *inheritable* handle in another process here?
>> Could it be that the target process spawns a child at the wrong moment
>> (e.g. before it even knows about the newly created handle), and that
>> handle unintentionally leaks into the child, triggering the hang
>> afterwards?
> 
> Thanks for finding that! As you pointed out, hWritePipe should not
> be inheritable. That might be the cause.
> 
> A countermeasure version is available at the following location:
> https://tyan0.yr32.net/cygwin/x86/test/cygwin1-20220411.dll.xz
> https://tyan0.yr32.net/cygwin/x86_64/test/cygwin1-20220411.dll.xz
> 
> Could you please test? To keep the hanging tree, please install
> cygwin another directory, and replace cygwin1.dll with the
> countermeasure version.
> 
Thank you for providing the binaries! I've started testing in a separate 
cygwin installation on the same machine, as you suggested. The hang 
previously took many hours to reproduce, so I'll keep tests running for 
a while and then report back.

Alexey


More information about the Cygwin mailing list