Issue 64803 - W32-4nt build can hang when started from cygwin process
Summary: W32-4nt build can hang when started from cygwin process
Status: CONFIRMED
Alias: None
Product: Build Tools
Classification: Code
Component: solenv (show other issues)
Version: current
Hardware: All Windows, all
: P3 Trivial (vote)
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact:
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-04-26 21:58 UTC by quetschke
Modified: 2013-08-07 15:34 UTC (History)
2 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
Testcase that hangs ... (70.60 KB, application/x-compressed)
2006-04-26 22:00 UTC, quetschke
no flags Details
cygcheck -svr output (33.66 KB, patch)
2006-04-26 22:37 UTC, quetschke
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this issue.
Description quetschke 2006-04-26 21:58:42 UTC
This is the nearest I got to the famous cygwin hang. I'm still unable to get
anything to hang when building W32-tcsh on three different machines
(2x XP, 1x W2k) but at least I got some hangs with W32-4nt with some
strict/strange border conditions:

1. It only hangs from rxvt. (Invoked with shortlink from desktop to:
C:\cygwin\bin\rxvt.exe  -cr green -sl 1000 -tn linux -e /usr/bin/bash --login -i)
I guess the actual switches don't matter. Startting the following example from
the bash that is started from the cygwin icon (cygwin.bat) didn't show the problem
so far.

2. Only hangs for "real" background processes started with setsid. From rxvt
like this:
$ setsid ./hang.sh >& hang.log

You need to unpack the following testcase, it contains the following files:
-rw-rw-rw- 1 quetschke None      0 Apr 26 16:45 dependency.file
-rwxr-xr-x 1 quetschke None 147456 Apr  3 20:19 dmake.exe
-rwxr-xr-x 1 quetschke None      3 Apr 26 10:34 hang.XXX$
-rwxr-xr-x 1 quetschke None 192635 Apr 26 16:45 hang.log
-rwxr-xr-x 1 quetschke None    285 Apr 26 13:30 hang.mk
-rwxr-xr-x 1 quetschke None    133 Apr 26 13:22 hang.sh

The dmake.exe is a native w32 version, from m164 build during an OOo build for
W32-4nt.

For me, after entering the above command and letting it run for a few minutes,
I get a 4nt process that is stuck at 99% and no new output reaches hang.log.

It definitely looks like 4nt is hanging, *BUT*
$ ps
      PID    PPID    PGID     WINPID  TTY  UID    STIME COMMAND
     3972       1    3972       3972  con 1006 16:35:12 /usr/bin/rxvt
I    3996    3972    3996       4008    0 1006 16:35:12 /usr/bin/bash
     3804       1    3804        736    ? 1006 16:49:29 /usr/bin/bash
      828    3804    3804       3760    ? 1006 16:52:26
/cygdrive/d/w1/w32-4nt-hang/dmake

if I kill the calling cygwin script, kill 3804 in this case, 4nt stops to
loop.

As you can see in hang.mk, I tried to reproduce the hang with cmd.exe, but I
cannot get to hang that either.

This is a very elusive problem :(
Comment 1 quetschke 2006-04-26 22:00:04 UTC
Created attachment 36076 [details]
Testcase that hangs ...
Comment 2 quetschke 2006-04-26 22:01:29 UTC
Can I get a "me too" here, or is this only reproducible with my stone aged 4nt
version?
Comment 3 quetschke 2006-04-26 22:37:50 UTC
Created attachment 36077 [details]
cygcheck -svr output
Comment 4 Rob Weir 2013-07-30 02:43:44 UTC
Reset assignee on issues not touched by assignee in more than 1000 days.