Deadlock of the process tree when running make

Takashi Yano takashi.yano@nifty.ne.jp
Sat Apr 9 16:57:53 GMT 2022


On Sat, 09 Apr 2022 19:07:08 +0300
Alexey Izbyshev wrote:
> On 2022-04-09 14:46, Takashi Yano wrote:
> > On Sat, 09 Apr 2022 14:02:38 +0300
> > Alexey Izbyshev wrote:
> >> 
> >> Missed the line in the link above:
> >> https://cygwin.com/git?p=newlib-cygwin.git;a=blob;f=winsup/cygwin/fhandler_tty.cc;h=7bef6958c106c5e78cc90e014081022fd3a205bc;hb=cygwin-3_3_4-release#l1199
> > 
> > Thanks for finding that. It would be very helpfull if you could
> > find another process which holds pcon_mutex and where it is stopping.
> 
> ProcessHacker showed that the owner of the pcon mutex is bash.exe with 
> (Windows) PID 6276. However, Cygwin ps doesn't list such a process. Its 
> parent, however, has a Cygwin PID 37961 and is in the hanging tree:
> 
> make(32651)-+-make(32656)-+-bash(37296)---find(38057)
>              |             |-bash(37632)---find(38061)
>              |             |-bash(37415)---find(38064)
>              |             |-bash(37852)---find(38062)
>              |             |-bash(37896)---find(38063)
>              |             `-bash(37961)---javac(38032)
>              
> `-make(32657)-+-bash(38025)---bash(38054)---bash(38055)---readlink(38056)
>                            
> `-bash(37722)---bash(37825)---bash(38058)-+-grep(38060)
>                                                                      
> `-grep(38059)
> 
> Since javac(38032) is a zombie, my guess is that missing bash.exe (win 
> 6276) is an intermediate process that Cygwin created when bash(37961) 
> forked to run javac.
> 
> bash.exe (win 6276) has two threads. The first one is blocked at 
> ClosePseudoConsole() (which according to stack trace eventually calls 
> NtWaitForSingleObject()) [1] and the second one is at [2].
> 
> [1] 
> https://cygwin.com/git?p=newlib-cygwin.git;a=blob;f=winsup/cygwin/fhandler_tty.cc;h=7bef6958c106c5e78cc90e014081022fd3a205bc;hb=cygwin-3_3_4-release#l3615
> 
> [2] 
> https://cygwin.com/git?p=newlib-cygwin.git;a=blob;f=winsup/cygwin/sigproc.cc;h=02d875a7fc947d628ca933690ed43ef03d767d53;hb=cygwin-3_3_4-release#l1359
> 
> Hope this is helpful,

Thank you very much for the information. Can you check if
the thread pty_master_fwd_thread() in root mintty is still
alive?

-- 
Takashi Yano <takashi.yano@nifty.ne.jp>


More information about the Cygwin mailing list