Deadlock of the process tree when running make

Alexey Izbyshev
Thu Apr 7 21:53:31 GMT 2022


I'm using 32-bit Cygwin 3.3.4 on 64-bit Windows 10 21H2. When running 
parallel make (for testing my project), very rarely I get the whole 
process tree hanging at some seemingly random point. An example of such 
a tree:

      |      |-bash---find
      |      |-bash---find
      |      |-bash---find
      |      |-bash---find
      |      `-bash---javac

(In the above tree, javac is the zombie parent of a native javac, and 
the latter doesn't exist at this point).

I got such hang two times while running make in a loop for several days. 
ProcessHacker shows that all leaf processes are single-threaded and are 
stuck on WaitForSingleObject().

I've skimmed git log of cygwin-3_3-branch after cygwin-3_3_4-release, 
but couldn't find anything that seems definitely related.

Has anybody seen something like this?

Is there any way I can get useful data for diagnosing this hang from the 
process tree that I currently have hanging (I'm going to keep it for 
now)? Otherwise, what would be the best strategy?


More information about the Cygwin mailing list