While trying to analyze my own strace example of a "make -j hang" ala this
ugly thread:

http://www.cygwin.com/ml/cygwin/2004-03/msg00376.html

My last strace output from the hung make process was:
   69 1576822 [proc] make 6724 proc_subproc: pid 7524[0], reparented old
hProcess 0x698, new 0x63C

So, looking there, I stumbled onto the following:

2004-03-08  Brian Ford  <[EMAIL PROTECTED]>

        * sigproc.cc (proc_subproc): Only call sync_proc_subproc->release()
        once for exec().

I'm not sure this is a bug, and it doesn't appear to fix the make hang I
was looking at, but I thought it deserved a quick review by someone who
knows that code :).  Thanks.

-- 
Brian Ford
Senior Realtime Software Engineer
VITAL - Visual Simulation Systems
FlightSafety International
Phone: 314-551-8460
Fax:   314-551-8444
Index: sigproc.cc
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/sigproc.cc,v
retrieving revision 1.189
diff -u -p -r1.189 sigproc.cc
--- sigproc.cc  26 Feb 2004 05:10:47 -0000      1.189
+++ sigproc.cc  8 Mar 2004 20:42:24 -0000
@@ -348,7 +348,7 @@ proc_subproc (DWORD what, DWORD val)
          ForceCloseHandle1 (h, childhProc);
          ProtectHandle1 (pchildren[val]->hProcess, childhProc);
          rc = 0;
-         goto out;                     // This was an exec()
+         goto out1;                    // This was an exec()
        }
 
       sigproc_printf ("pid %d[%d] terminated, handle %p, nchildren %d, nzombies %d",

Reply via email to