Mail Archives: cygwin/2002/09/13/10:39:33
Hi Folks,
Problem:
Parents hang awaiting child process termination (279 below)...
$ ps
PID PPID PGID WINPID TTY UID STIME COMMAND
165 1 165 165 con 500 07:37:42 /usr/bin/bash
121 1 121 121 ? 500 07:37:47
/usr/bin/ssh-agent
298 165 298 260 con 500 07:47:07 /usr/bin/bash
288 298 298 287 con 500 07:47:07 /usr/bin/make
305 298 298 166 con 500 07:47:08 /usr/bin/tee
249 288 298 249 con 500 07:48:37 /usr/bin/sh
233 249 298 310 con 500 07:48:38 /usr/bin/make
284 233 298 284 con 500 07:48:38 /usr/bin/sh
146 284 298 146 con 500 07:48:39 /usr/bin/make
71 146 298 71 con 500 07:48:43 /usr/bin/sh
360 71 298 199 con 500 07:54:20 /usr/bin/make
350 360 298 350 con 500 07:54:20 /usr/bin/sh
333 350 298 246 con 500 07:54:20 /usr/bin/make
279 333 298 279 con 500 07:54:50 <exited>
201 1 201 201 con 500 07:59:22 /usr/bin/bash
232 1 232 232 ? 500 07:59:27
/usr/bin/ssh-agent
224 201 224 207 con 500 07:59:29 /usr/bin/ps
Temporary change to "<defunct>"...
<ps.cc>
char pname[MAX_PATH];
if (p->process_state & PID_ZOMBIE)
strcpy (pname, "<zombie>");
else
// if (p->process_state & (PID_ZOMBIE | PID_EXITED))
if (p->process_state & PID_EXITED)
strcpy (pname, "<exited>");
else if (p->ppid)
{
</ps.cc>
When:
Spurious and apparently under load. EG: a compilation as above where
"sh" is the victim. Not limited to "sh" though - has happened to
"collect2" and once to the initial bash console when yet again the
system was still hammering the hard disk. Can't get it to occur under
"strace --mask=sigp" because it just doesn't stress the same. :-(
"win-tlist" is nothing more than "TLIST" from in a shell wrapper script.
It's the third [bad] listing below that's interesting...
[good 1 of 2]
$ win-tlist 71
71 sh.exe
CWD:
J:\cygwin\all\src\cvs\cygwin\dll\obj-rel\i686-pc-cygwin\newlib\
CmdLine: J:\cygwin\bin\sh.exe -c "set fnord --unix -w -- ; amf=$2;
dot_seen
=no; target=`echo all-recursive | sed s/-recursive//`; list='libc libm
doc .';
for subdir in $list; do echo \"Making $target in $subdir\"; if test
\"$subdir
\" = \".\"; then dot_seen=yes; local_target=\"$target-am\"; else
local_targe
t=\"$target\"; fi; (cd $subdir && make \"AR_FLAGS=rc\"
\"CC_FOR_BUILD=/all/src
/cvs/cygwin/dll/ccache-gcc\" \"CFLAGS=-O2 \" \"CFLAGS_FOR_BUILD=\"
\"CFLAGS_FOR_
TARGET=-O2 \" \"LDFLAGS=\" \"LIBCFLAGS=-O2 \" \"LIBC VirtualSize:
298096 KB
PeakVirtualSize: 303020 KB
WorkingSetSize: 1004 KB PeakWorkingSetSize: 1932 KB
NumberOfThreads: 7
278 Win32StartAddr:0x00401000 LastErr:0x00000000 State:Waiting
283 Win32StartAddr:0x610048b8 LastErr:0x00000000 State:Waiting
192 Win32StartAddr:0x610048b8 LastErr:0x00000120 State:Waiting
215 Win32StartAddr:0x610048b8 LastErr:0x00000000 State:Waiting
182 Win32StartAddr:0x610048b8 LastErr:0x00000000 State:Waiting
256 Win32StartAddr:0x610048b8 LastErr:0x00000000 State:Waiting
303 Win32StartAddr:0x610048b8 LastErr:0x00000000 State:Waiting
0x00400000 sh.exe
4.0.1381.298 shp 0x77f60000 ntdll.dll
1003.13.0.0 shp 0x61000000 cygwin1.dll
4.0.1381.300 shp 0x77f00000 KERNEL32.dll
4.0.1381.281 shp 0x77dc0000 advapi32.dll
4.0.1381.310 shp 0x77e70000 USER32.dll
4.0.1381.298 shp 0x77ed0000 GDI32.dll
4.0.1381.335 shp 0x77e10000 RPCRT4.dll
4.0.1381.319 shp 0x77bf0000 rpcltc1.dll
[good 2 of 2]
$ win-tlist 350
350 sh.exe
CWD:
J:\cygwin\all\src\cvs\cygwin\dll\obj-rel\i686-pc-cygwin\newlib\libm\
CmdLine: J:\cygwin\bin\sh.exe -c "set fnord --unix -w -- DESTDIR=
RANLIB=ran
lib PICFLAG= NM=nm LIBCFLAGS=-O2\ LD=ld
CC=/all/src/cvs/cygwin/dll/ccache-gcc\
-L/all/src/cvs/cygwin/dll/obj-rel/i686-pc-cygwin/winsup\
-L/all/src/cvs/cygwin/d
ll/obj-rel/i686-pc-cygwin/winsup/cygwin\
-L/all/src/cvs/cygwin/dll/obj-rel/i686-
pc-cygwin/winsup/w32api/lib\ -isystem\
/all/src/cvs/cygwin/dll/src/winsup/includ
e\ -isystem\ /all/src/cvs/cygwin/dll/src/winsup/cygwin/include\
-isystem\ /all/s
rc/cvs/cygwin/dll/src/winsup/w32api/include\ -isyste VirtualSize:
298092 KB
PeakVirtualSize: 303016 KB
WorkingSetSize: 1276 KB PeakWorkingSetSize: 1924 KB
NumberOfThreads: 7
193 Win32StartAddr:0x00401000 LastErr:0x00000000 State:Waiting
330 Win32StartAddr:0x610048b8 LastErr:0x00000000 State:Waiting
342 Win32StartAddr:0x610048b8 LastErr:0x00000120 State:Waiting
361 Win32StartAddr:0x610048b8 LastErr:0x00000000 State:Waiting
320 Win32StartAddr:0x610048b8 LastErr:0x00000000 State:Waiting
329 Win32StartAddr:0x610048b8 LastErr:0x00000000 State:Waiting
216 Win32StartAddr:0x610048b8 LastErr:0x00000000 State:Waiting
0x00400000 sh.exe
4.0.1381.298 shp 0x77f60000 ntdll.dll
1003.13.0.0 shp 0x61000000 cygwin1.dll
4.0.1381.300 shp 0x77f00000 KERNEL32.dll
4.0.1381.281 shp 0x77dc0000 advapi32.dll
4.0.1381.310 shp 0x77e70000 USER32.dll
4.0.1381.298 shp 0x77ed0000 GDI32.dll
4.0.1381.335 shp 0x77e10000 RPCRT4.dll
4.0.1381.319 shp 0x77bf0000 rpcltc1.dll
[bad]
$ win-tlist 279
279 sh.exe
CWD:
J:\cygwin\all\src\cvs\cygwin\dll\obj-rel\i686-pc-cygwin\newlib\libm\
math\
CmdLine: J:\cygwin\bin\sh.exe -c "/all/src/cvs/cygwin/dll/ccache-gcc
-L/all/s
rc/cvs/cygwin/dll/obj-rel/i686-pc-cygwin/winsup
-L/all/src/cvs/cygwin/dll/obj-re
l/i686-pc-cygwin/winsup/cygwin
-L/all/src/cvs/cygwin/dll/obj-rel/i686-pc-cygwin/
winsup/w32api/lib -isystem /all/src/cvs/cygwin/dll/src/winsup/include
-isystem /
all/src/cvs/cygwin/dll/src/winsup/cygwin/include -isystem
/all/src/cvs/cygwin/dl
l/src/winsup/w32api/include -isystem
/all/src/cvs/cygwin/dll/src/newlib/libc/sys
/cygwin -isystem /all/src/cvs/cygwin/dll/src/newlib/ VirtualSize:
298240 KB
PeakVirtualSize: 303028 KB
WorkingSetSize: 1156 KB PeakWorkingSetSize: 1824 KB
NumberOfThreads: 1
302 Win32StartAddr:0x610048b8 LastErr:0x00000000 State:Waiting
0x00400000 sh.exe
4.0.1381.298 shp 0x77f60000 ntdll.dll
1003.13.0.0 shp 0x61000000 cygwin1.dll
4.0.1381.300 shp 0x77f00000 KERNEL32.dll
4.0.1381.281 shp 0x77dc0000 advapi32.dll
4.0.1381.310 shp 0x77e70000 USER32.dll
4.0.1381.298 shp 0x77ed0000 GDI32.dll
4.0.1381.335 shp 0x77e10000 RPCRT4.dll
4.0.1381.319 shp 0x77bf0000 rpcltc1.dll
4.0.1371.1 shp 0x4fb80000 psapi.dll
4.0.1381.125 shp 0x76ac0000 IMAGEHLP.dll
I can't kill it (including Task Manager and NT "kill -f"), can't
rename/delete cygwin1.dll, not via logging off & on again. It's a
reboot. Is that real mean or what ;-)
6039k 2002/09/11 J:\cygwin\bin\cygwin1.dll
Cygwin DLL version info:
DLL version: 1.3.13
DLL epoch: 19
DLL bad signal mask: 19005
DLL old termios: 5
DLL malloc env: 28
API major: 0
API minor: 62
Shared data: 3
DLL identifier: cygwin1
Mount registry: 2
Cygnus registry name: Cygnus Solutions
Cygwin registry name: Cygwin
Program options name: Program Options
Cygwin mount registry name: mounts v2
Cygdrive flags: cygdrive flags
Cygdrive prefix: cygdrive prefix
Cygdrive default prefix:
Build date: Wed Sep 11 19:39:57 2002
Shared id: cygwin1S3-2002-09-11 19:39
I can't seem to figure out how to set a breakpoint in sigproc.cc without
recompiling make with debug. Any hints?
--
swamp-dog AT ntlworld DOT com
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -