This is the mail archive of the cygwin mailing list for the Cygwin project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Wed, Apr 26, 2006 at 05:39:37PM -0400, Volker Quetschke wrote:
On my search for the infamous cygwin hang while building OOo, see <http://sources.redhat.com/ml/cygwin/2005-12/msg00279.html>, and <http://wiki.services.openoffice.org/wiki/Windows#Miscellaneous_info> that I couldn't reproduce myself (WJFFM) I finally managed to get a reproducible hang on my systems that might be related.
As said, the original OOo build works just fine here, but there is an alternative possibility to build OOo with 4nt instead of tcsh, and
from that I managed to reproduce a small testcase. Unfortunately
it requires 4nt :( and 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, <http://www.openoffice.org/nonav/issues/showattachment.cgi/36076/w32-4nt-hang.zip> it contains the following files: -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 a m164 OO build with 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 :(
So, if I'm understanding what you're saying correctly, you are seeing a hang in a non-cygwin process (4nt) which can't be duplicated in a program with similar functionality (cmd) so therefore, your conclusion is that there is a cygwin bug?
Please verify what the identity of the actual hung program by running task manager. If it really is a non-cygwin program that is having problems then I'm not tremendously concerned.
The 99% come from the task manager, obviously it is a non-cygwin program that hangs.
But it looks suspicious that killing the toplevel cygwin bash script stops the looping 4nt process - Through another native W32 proc (hang.sh -> dmake -> 4nt). And also that $ ls /proc/*/fd now hangs until (see original problem with OOo build) the 4nt or the script are killed looks strange.
I'm not trying to fix third party programs here, I'm clutching every straw to produce a reproducible hang so that this problem can be solved for good.
-- PGP/GPG key (ID: 0x9F8A785D) available from wwwkeys.de.pgp.net key-fingerprint 550D F17E B082 A3E9 F913 9E53 3D35 C9BA 9F8A 785D
Attachment:
signature.asc
Description: OpenPGP digital signature
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |