Hello! Some time ago, when I was using at home 1.3.18 version of CygWin under Windows 2000 Workstation + SP3, I discovered that every command execution lead to some memory leak. It's especially noticeably when I try to run large scripts (like "configure") - the memory loading (as viewed in Task Manager) grow to its physical size and next I get message like this:
0 [main] sh 35620 sync_with_child: child 35636(0xDC) died before initialization with status code 0x80 6847 [main] sh 35620 sync_with_child: *** child state waiting for longjmp ./../ltconfig: fork: Resource temporarily unavailable After this, any process can't be started without rebooting (or killing other process). Recently, I upgraded my system to Windows 2000 Server + SP3 (with total precleanup) and CygWin 1.3.19, but problem is there as before. :( I made small test program which loops for 1000 times: --8<---------------------------------- #!/bin/sh ctr=1 while test `expr "$ctr"` -lt 1000; do ctr=`expr $ctr + 1` # ps > /dev/null done --8<---------------------------------- The result: --8<---------------------------------- $ ./test 0 [main] sh 1136 sync_with_child: child 35976(0x134) died before initialization with status code 0x80 1976 [main] sh 1136 sync_with_child: *** child state waiting for longjmp ./test: fork: Resource temporarily unavailable --8<---------------------------------- After this, the memory leak average is 28 MBytes. When I uncomment line "ps > /dev/null" in this example, memory leak grow to 42 MBytes. Changing "ps" command in uncommented line on any external command not affect average memory leak. All looks like every fork() lead to leak about 13 KBytes of physical memory. All utilities don't indicate that memory leak exist in user space, that I decide that lost memory must be located in kernel space. It's very strange, but all this works nice at my work on computer with Windows 2000 Workstation + SP3! My home computer hardware is AMD Duron 800 MHz, Abit KT7A Motherboard, 256 MB RAM; at work Celeron 800 MHz, Acorp i815 Motherboard, 128 MB RAM. The difference is also in the filesystems: FAT32 at home and NTFS at work. I found similar messages in cygwin mailing list archive, but without any response. By the way, same problem exist in MinGW minimalistic system (MSYS). Is there anybody who can say any considerations about this problem? The "cygcheck" program out is attached to this message. Regards, Victor.
cygcheck.out
Description: Binary data
-- 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/