public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* RE: mmap of large amount returns invalid pointer
@ 2002-03-12 14:53 Heribert Dahms
  2002-03-12 18:48 ` Stephen Weeks
  2002-03-13  2:23 ` Corinna Vinschen
  0 siblings, 2 replies; 14+ messages in thread
From: Heribert Dahms @ 2002-03-12 14:53 UTC (permalink / raw)
  To: 'Stephen Weeks', cygwin

Hi Stephen and Corinna,

looks like you have overlooked that mmap doesn't return NULL
despite win32 error in strace (see below):

c:\>net helpmsg 1455

The paging file is too small for this operation to complete.


Second, (may mean nothing) why is h:188 first and h:190 second time?

Bye, Heribert (heribert_dahms@icon-scm.com)

> -----Original Message-----
> From:	Stephen Weeks [SMTP:sweeks@acm.org]
> Sent:	Tuesday, March 12, 2002 19:08
> To:	cygwin@cygwin.com
> Subject:	Re: mmap of large amount returns invalid pointer
> 
	[Heribert]  [snip] 

>  1668  719099 [main] mmap 159 mmap: addr 0, len 100000000, prot 3, flags
> 22, fd -1, off 0
>  5487  724586 [main] mmap 159 fhandler_disk_file::mmap: 2A230000 =
> MapViewOfFileEx (h:188, access:1, 0, off:0, len:100007936, addr:0)
> 26042  750628 [main] mmap 159 mmap: 2A230000 = mmap() succeeded
> 
	[Heribert]  [snip]

>  1302 2076991 [main] mmap 159 mmap: addr 0, len 130000000, prot 3, flags
> 22, fd -1, off 0
>  2949 2079940 [main] mmap 159 fhandler_disk_file::mmap: 2A230000 =
> MapViewOfFileEx (h:190, access:1, 0, off:0, len:130023424, addr:0)
>  7425 2087365 [main] mmap 159 mmap_record::map_map: -1 = map_map (): Win32
> error 1455
>  1830 2089195 [main] mmap 159 mmap: 2A230000 = mmap() succeeded
> 
	[Heribert]  [snip]

--
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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* RE: mmap of large amount returns invalid pointer
  2002-03-12 14:53 mmap of large amount returns invalid pointer Heribert Dahms
@ 2002-03-12 18:48 ` Stephen Weeks
  2002-03-12 18:48   ` Christopher Faylor
  2002-03-13  2:23 ` Corinna Vinschen
  1 sibling, 1 reply; 14+ messages in thread
From: Stephen Weeks @ 2002-03-12 18:48 UTC (permalink / raw)
  To: cygwin; +Cc: Heribert Dahms


> looks like you have overlooked that mmap doesn't return NULL
> despite win32 error in strace (see below):
> 
> c:\>net helpmsg 1455
> 
> The paging file is too small for this operation to complete.

Thanks for pointing that out.  I agree that it looks like the Cygwin
dll is failing to check for the Win32 error, which should have caused
mmap to return -1.

But even if that is fixed, I don't understand why Cygwin/mmap is
unable to obtain the memory.  My earlier message showed that at the
start of the program the information returned by GlobalMemoryStatus
shows that there is easily >300Mb available.

TotalPhys: 209113088
AvailPhys: 166580224
TotalPageFile: 309587968
AvailPageFile: 275365888
TotalVirtual: 2147352576
AvailVirtual: 1589841920

I tried a modified version of the program that uses VirtualAlloc/Free
instead of mmap/munmap and it is able to allocate, zero, and free
300Mb.

--
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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: mmap of large amount returns invalid pointer
  2002-03-12 18:48 ` Stephen Weeks
@ 2002-03-12 18:48   ` Christopher Faylor
  0 siblings, 0 replies; 14+ messages in thread
From: Christopher Faylor @ 2002-03-12 18:48 UTC (permalink / raw)
  To: cygwin

On Tue, Mar 12, 2002 at 06:21:15PM -0800, Stephen Weeks wrote:
>
>> looks like you have overlooked that mmap doesn't return NULL
>> despite win32 error in strace (see below):
>> 
>> c:\>net helpmsg 1455
>> 
>> The paging file is too small for this operation to complete.
>
>Thanks for pointing that out.  I agree that it looks like the Cygwin
>dll is failing to check for the Win32 error, which should have caused
>mmap to return -1.
>
>But even if that is fixed, I don't understand why Cygwin/mmap is
>unable to obtain the memory.  My earlier message showed that at the
>start of the program the information returned by GlobalMemoryStatus
>shows that there is easily >300Mb available.
>
>TotalPhys: 209113088
>AvailPhys: 166580224
>TotalPageFile: 309587968
>AvailPageFile: 275365888
>TotalVirtual: 2147352576
>AvailVirtual: 1589841920
>
>I tried a modified version of the program that uses VirtualAlloc/Free
>instead of mmap/munmap and it is able to allocate, zero, and free
>300Mb.

Sounds like you should be looking at the cygwin source code.  That's
the best way to achieve clarity in cases like this.

cgf
--
Please do not send me personal email with cygwin questions.
Use the resources at http://cygwin.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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: mmap of large amount returns invalid pointer
  2002-03-12 14:53 mmap of large amount returns invalid pointer Heribert Dahms
  2002-03-12 18:48 ` Stephen Weeks
@ 2002-03-13  2:23 ` Corinna Vinschen
  2002-03-13 14:25   ` Stephen Weeks
  1 sibling, 1 reply; 14+ messages in thread
From: Corinna Vinschen @ 2002-03-13  2:23 UTC (permalink / raw)
  To: cygwin

On Tue, Mar 12, 2002 at 11:44:36PM +0100, Heribert Dahms wrote:
> Hi Stephen and Corinna,
> 
> looks like you have overlooked that mmap doesn't return NULL
> despite win32 error in strace (see below):
> 
> c:\>net helpmsg 1455
> 
> The paging file is too small for this operation to complete.

No, I didn't overlook it, it's exactly what I've been seeing on
my machine as well as I mentioned yesterday.

If you look into the strace you'll see that MapViewOfFileEx()
returns a valid memory area.  And no, it does *not* return an
error code.  MapViewOfFileEx() is reliable enough to not return
a memory area and an error code.
The failing function is a following VirtualProtect() which job
is to set the memory protection on the allocated memory area
correctly.  And that's actually surprising.  VirtualProtect()
shouldn't have problems with memory since it doesn't allocate
any.  At least it shouldn't.
But the real problem is that the page file is, well, full after
the mmap() call.  A following printf is trying to allocate a
small amount of memory but allocation fails apparently and at
one point a check for a failed malloc() is missing.
So the SEGV is actually a followup of the fact that there isn't
any memory left to allocate.

> Second, (may mean nothing) why is h:188 first and h:190 second time?

Means nothing.

Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Developer                                mailto:cygwin@cygwin.com
Red Hat, Inc.

--
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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: mmap of large amount returns invalid pointer
  2002-03-13  2:23 ` Corinna Vinschen
@ 2002-03-13 14:25   ` Stephen Weeks
  2002-03-14  4:30     ` Corinna Vinschen
  0 siblings, 1 reply; 14+ messages in thread
From: Stephen Weeks @ 2002-03-13 14:25 UTC (permalink / raw)
  To: cygwin


> If you look into the strace you'll see that MapViewOfFileEx()
> returns a valid memory area.  And no, it does *not* return an
> error code.  MapViewOfFileEx() is reliable enough to not return
> a memory area and an error code.
>
> The failing function is a following VirtualProtect() which job
> is to set the memory protection on the allocated memory area
> correctly.  And that's actually surprising.  VirtualProtect()
> shouldn't have problems with memory since it doesn't allocate
> any.  At least it shouldn't.

Having now read mmap.cc, this is how I interpret the strace as well.
I'm afraid I know almost nothing about Windows and have no explanation
as to why the VirtualProtect fails.

> But the real problem is that the page file is, well, full after
> the mmap() call.  A following printf is trying to allocate a
> small amount of memory but allocation fails apparently and at
> one point a check for a failed malloc() is missing.
> So the SEGV is actually a followup of the fact that there isn't
> any memory left to allocate.

I don't think this explanation is correct.  I still think that mmap is
returning a pointer to an invalid chunk of memory.  To demonstrate
this, here is a program that does an mmap, fprintf, and then attempts
to write to the first byte of the mmap'ed memory.

--------------------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <sys/mman.h>
#include <unistd.h>
#include <windows.h>

void
die(char *fmt, ...)
{
	va_list	args;

	fflush(stdout);
	va_start(args, fmt);
	vfprintf(stderr, fmt, args);
	va_end(args);
	fprintf(stderr, "\n");
	exit(1);
}

int main (int argc, char **argv) {
	uint length;
	void *p;

	length = 130000000;
	p = mmap (NULL, length, 
			PROT_READ | PROT_WRITE, 
			MAP_PRIVATE | MAP_ANON, -1, 0);
	if ((void*)-1 == p)
		die("mmap failed\n");
	fprintf(stderr, "mmap succeeded\n");
	((char*)p)[0] = 'a';
	if (-1 == munmap(p, length))
		die("munmap failed\n");
	return 0;
}
--------------------------------------------------------------------------------

When I run this program, the mmap and fprintf succeed, and then there
is a segfault, presumably in the store to p[0].  Here is a snippet of
the strace to corroborate.

 1546  597904 [main] bug 161 mmap: addr 0, len 130000000, prot 3, flags 22, fd -1, off 0
 5208  603112 [main] bug 161 fhandler_disk_file::mmap: 2A230000 = MapViewOfFileEx (h:144, access:1, 0, off:0, len:130023424, addr:0)
 7918  611030 [main] bug 161 mmap_record::map_map: -1 = map_map (): Win32 error 1455
 1380  612410 [main] bug 161 mmap: 2A230000 = mmap() succeeded
 1076  613486 [main] bug 161 _write: write (2, 0x22F758, 15)
 1050  614536 [main] bug 161 fhandler_base::write: binary write
mmap succeeded
 1060  615596 [main] bug 161 fhandler_base::write: 15 = write (0x22F758, 15)
 1005  616601 [main] bug 161 _write: 15 = write (2, 0x22F758, 15)
 2225  618826 [main] bug 161 handle_exceptions: In cygwin_except_handler exc 0xC0000005 at 0x401140 sp 0x22FE80
 1043  619869 [main] bug 161 handle_exceptions: In cygwin_except_handler sig = 11 at 0x401140
 1236  621105 [main] bug 161 handle_exceptions: In cygwin_except_handler calling 0x0
 622178 [main] bug 161 handle_exceptions: Exception: STATUS_ACCESS_VIOLATION
 1073  622178 [main] bug 161 handle_exceptions: Exception: STATUS_ACCESS_VIOLATION

On the other hand, if I decrease the length from 130,000,000 to
13,000,000, then the VirtualProtect does not complain, and the store
to p[0] and munmap both succeed.  Here is the strace snippet.

 1140  594523 [main] bug 68 mmap: addr 0, len 13000000, prot 3, flags 22, fd -1, off 0
 7013  601536 [main] bug 68 fhandler_disk_file::mmap: 2A230000 = MapViewOfFileEx (h:144, access:1, 0, off:0, len:13041664, addr:0)
 4912  606448 [main] bug 68 mmap: 2A230000 = mmap() succeeded
 1185  607633 [main] bug 68 _write: write (2, 0x22F758, 15)
 1614  609247 [main] bug 68 fhandler_base::write: binary write
mmap succeeded
 1150  610397 [main] bug 68 fhandler_base::write: 15 = write (0x22F758, 15)
 1024  611421 [main] bug 68 _write: 15 = write (2, 0x22F758, 15)
 1141  612562 [main] bug 68 munmap: munmap (addr 2A230000, len 13000000)
 3703  616265 [main] bug 68 munmap: 0 = munmap(): 2A230000

My conclusion remains that the mmap(130,000,000) is returning a
pointer to invalid memory.  I don't know if the problem is connected
to the failure of VirtualProtect or not.  I will continue to
investigate, but would still appreciate any assistance.

--
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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: mmap of large amount returns invalid pointer
  2002-03-13 14:25   ` Stephen Weeks
@ 2002-03-14  4:30     ` Corinna Vinschen
  2002-03-17 11:37       ` Stephen Weeks
  0 siblings, 1 reply; 14+ messages in thread
From: Corinna Vinschen @ 2002-03-14  4:30 UTC (permalink / raw)
  To: cygwin

On Wed, Mar 13, 2002 at 01:57:33PM -0800, Stephen Weeks wrote:
> I don't think this explanation is correct.  I still think that mmap is
> returning a pointer to an invalid chunk of memory.  To demonstrate
> this, here is a program that does an mmap, fprintf, and then attempts
> to write to the first byte of the mmap'ed memory.

The explanation wasn't quite correct, you're right, but the memory is
not invalid.  It's correctly returned by MapViewOfFileEx and the same
value is returned by mmap().  However, it's *non-accessible* since all
pages are protected using PAGE_NOACCESS after the call to MapViewOfFileEx.  
The next call to VirtualProtect which is responsible for setting the
correct protection mode on the used memory (used mem != allocated mem)
unfortunately fails.  The result is that mmap() returns a correct
memory pointer which is nevertheless inaccessible. :-(

Anyway, I've checked in a patch.  It now checks if VirtualProtect
failed and then mmap() also fails.  Try the next developers snapshot,
please.

Thanks for the testcases,
Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Developer                                mailto:cygwin@cygwin.com
Red Hat, Inc.

--
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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: mmap of large amount returns invalid pointer
  2002-03-14  4:30     ` Corinna Vinschen
@ 2002-03-17 11:37       ` Stephen Weeks
  2002-03-19  3:43         ` Corinna Vinschen
  0 siblings, 1 reply; 14+ messages in thread
From: Stephen Weeks @ 2002-03-17 11:37 UTC (permalink / raw)
  To: cygwin


Corinna:
> Anyway, I've checked in a patch.  It now checks if VirtualProtect
> failed and then mmap() also fails.  Try the next developers snapshot,
> please.

Thanks for the fix.  I tried the 2002-Mar-16 snapshot and the test
program works correctly.  However, a slightly modified program that
munmaps the memory in the parent process and then exits does not work
reliably.  I have included the test case and an strace of a failed run
below.  Because of timing issues, you may have to run the program
several times before you see the failure.  As far as I can tell, the
problem is that the parent unmaps the memory before the child has a
chance to do "fixup_mmaps_after_fork".

--------------------------------------------------------------------------------

#include <stddef.h>
#include <stdio.h>
#include <sys/mman.h>
#include <sys/types.h>
#include <unistd.h>

void die (char *s) {
        fprintf(stderr, "%d", s);
        exit(1);
}

int main (int argc, char **argv) {
        pid_t pid;
        size_t length;
        char *buf;

	fprintf(stderr, "starting\n");
        length = getpagesize ();
        buf = (char*) mmap (NULL, length, PROT_READ | PROT_WRITE, 
                                MAP_PRIVATE | MAP_ANON, -1, 0);
        if (buf == (void*)-1) 
                die ("mmap failed");
        strcpy (buf, "hello");
        pid = fork ();
        if (0 == pid) {
                fprintf(stderr, "%s\n", buf);
		munmap (buf, length);
        } else {
                fprintf(stderr, "%s\n", buf);
		munmap (buf, length);
		exit(0);
        }
}

--------------------------------------------------------------------------------

**********************************************
Program name: c:\sweeks\tmp\fork.exe (63)
App version:  1003.10, api: 0.51
DLL version:  1003.11, api: 0.51
DLL build:    20020316 02:33:42SNP
OS version:   Windows NT-4.0
Date/Time:    2002-03-17 10:41:52
**********************************************
 6712   17708 [main] fork 63 environ_init: 0xA010420: !C:=C:\WINNT\Profiles\sweeks\Desktop
 3119   20827 [main] fork 63 environ_init: 0xA010450: !Z:=Z:\cygwin\bin
 2436   23263 [main] fork 63 environ_init: 0xA010468: COMPUTERNAME=WINDOZE
 2324   25587 [main] fork 63 environ_init: 0xA010488: COMSPEC=C:\WINNT\system32\cmd.exe
 2327   27914 [main] fork 63 environ_init: 0xA0104B0: CVSROOT=:pserver:anoncvs@sources.redhat.com:/cvs/src
 2813   30727 [main] fork 63 parse_options: binmode 65536
 2395   33122 [main] fork 63 parse_options: ntsec 1
 2318   35440 [main] fork 63 parse_options: tty 1001
 2314   37754 [main] fork 63 parse_options: returning
 1375   39129 [main] fork 63 environ_init: 0xA0104F0: CYGWIN=binmode ntsec tty 
 2943   42072 [main] fork 63 getwinenv: can't set native for HOME= since no environ yet
 2774   44846 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\home\sweeks, no-keep-rel, no-add-slash)
 1531   46377 [main] fork 63 normalize_win32_path: z:\cygwin\home\sweeks = normalize_win32_path (z:\cygwin\home\sweeks)
 1923   48300 [main] fork 63 mount_info::conv_to_posix_path: /home/sweeks = conv_to_posix_path (z:\cygwin\home\sweeks)
 4062   52362 [main] fork 63 win_env::add_cache: posix /home/sweeks
 1223   53585 [main] fork 63 win_env::add_cache: native HOME=z:\cygwin\home\sweeks
 1217   54802 [main] fork 63 posify: env var converted to HOME=/home/sweeks
 2330   57132 [main] fork 63 environ_init: 0xA010560: HOME=/home/sweeks
 3177   60309 [main] fork 63 environ_init: 0xA010540: HOMEDRIVE=C:
 2429   62738 [main] fork 63 environ_init: 0xA0106A8: HOMEPATH=\
 2314   65052 [main] fork 63 environ_init: 0xA0106B8: LOGNAME=sweeks
 2314   67366 [main] fork 63 environ_init: 0xA0106D0: LOGONSERVER=\\WINDOZE
 2851   70217 [main] fork 63 environ_init: 0xA0106F0: MAIL=/var/spool/mail/sweeks
 2407   72624 [main] fork 63 environ_init: 0xA010710: MAKE_MODE=unix
 2323   74947 [main] fork 63 environ_init: 0xA010728: MANPATH=:/usr/ssl/man:/usr/ssl/man
 2318   77265 [main] fork 63 environ_init: 0xA010750: NUMBER_OF_PROCESSORS=1
 4838   82103 [main] fork 63 environ_init: 0xA010770: OLDPWD=/cygdrive/c/sweeks
 3683   85786 [main] fork 63 environ_init: 0xA010790: OS2LIBPATH=C:\WINNT\system32\os2\dll;
 2469   88255 [main] fork 63 environ_init: 0xA0107C0: OS=Windows_NT
 2803   91058 [main] fork 63 getwinenv: can't set native for PATH= since no environ yet
 2392   93450 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\home\sweeks\bin, keep-rel, no-add-slash)
 1247   94697 [main] fork 63 normalize_win32_path: z:\cygwin\home\sweeks\bin = normalize_win32_path (z:\cygwin\home\sweeks\bin)
 1231   95928 [main] fork 63 mount_info::conv_to_posix_path: /home/sweeks/bin = conv_to_posix_path (z:\cygwin\home\sweeks\bin)
 1210   97138 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\sbin, keep-rel, no-add-slash)
 1355   98493 [main] fork 63 normalize_win32_path: z:\cygwin\sbin = normalize_win32_path (z:\cygwin\sbin)
 1718  100211 [main] fork 63 mount_info::conv_to_posix_path: /sbin = conv_to_posix_path (z:\cygwin\sbin)
 1283  101494 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\usr\sbin, keep-rel, no-add-slash)
 1220  102714 [main] fork 63 normalize_win32_path: z:\cygwin\usr\sbin = normalize_win32_path (z:\cygwin\usr\sbin)
 1205  103919 [main] fork 63 mount_info::conv_to_posix_path: /usr/sbin = conv_to_posix_path (z:\cygwin\usr\sbin)
 1199  105118 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\usr\local\bin, keep-rel, no-add-slash)
 1200  106318 [main] fork 63 normalize_win32_path: z:\cygwin\usr\local\bin = normalize_win32_path (z:\cygwin\usr\local\bin)
 1550  107868 [main] fork 63 mount_info::conv_to_posix_path: /usr/local/bin = conv_to_posix_path (z:\cygwin\usr\local\bin)
 1461  109329 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\bin, keep-rel, no-add-slash)
 1502  110831 [main] fork 63 normalize_win32_path: z:\cygwin\bin = normalize_win32_path (z:\cygwin\bin)
 1273  112104 [main] fork 63 mount_info::conv_to_posix_path: /usr/bin = conv_to_posix_path (z:\cygwin\bin)
 1213  113317 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\bin, keep-rel, no-add-slash)
 1211  114528 [main] fork 63 normalize_win32_path: z:\cygwin\bin = normalize_win32_path (z:\cygwin\bin)
 1202  115730 [main] fork 63 mount_info::conv_to_posix_path: /usr/bin = conv_to_posix_path (z:\cygwin\bin)
 1201  116931 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\home\sweeks\bin, keep-rel, no-add-slash)
 1351  118282 [main] fork 63 normalize_win32_path: z:\cygwin\home\sweeks\bin = normalize_win32_path (z:\cygwin\home\sweeks\bin)
 1740  120022 [main] fork 63 mount_info::conv_to_posix_path: /home/sweeks/bin = conv_to_posix_path (z:\cygwin\home\sweeks\bin)
 1283  121305 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\sbin, keep-rel, no-add-slash)
 1202  122507 [main] fork 63 normalize_win32_path: z:\cygwin\sbin = normalize_win32_path (z:\cygwin\sbin)
 1200  123707 [main] fork 63 mount_info::conv_to_posix_path: /sbin = conv_to_posix_path (z:\cygwin\sbin)
 1195  124902 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\usr\sbin, keep-rel, no-add-slash)
 1197  126099 [main] fork 63 normalize_win32_path: z:\cygwin\usr\sbin = normalize_win32_path (z:\cygwin\usr\sbin)
 1196  127295 [main] fork 63 mount_info::conv_to_posix_path: /usr/sbin = conv_to_posix_path (z:\cygwin\usr\sbin)
 1359  128654 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\usr\local\bin, keep-rel, no-add-slash)
 1497  130151 [main] fork 63 normalize_win32_path: z:\cygwin\usr\local\bin = normalize_win32_path (z:\cygwin\usr\local\bin)
 1269  131420 [main] fork 63 mount_info::conv_to_posix_path: /usr/local/bin = conv_to_posix_path (z:\cygwin\usr\local\bin)
 1216  132636 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\bin, keep-rel, no-add-slash)
 1204  133840 [main] fork 63 normalize_win32_path: z:\cygwin\bin = normalize_win32_path (z:\cygwin\bin)
 1200  135040 [main] fork 63 mount_info::conv_to_posix_path: /usr/bin = conv_to_posix_path (z:\cygwin\bin)
 1199  136239 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\bin, keep-rel, no-add-slash)
 1190  137429 [main] fork 63 normalize_win32_path: z:\cygwin\bin = normalize_win32_path (z:\cygwin\bin)
 1375  138804 [main] fork 63 mount_info::conv_to_posix_path: /usr/bin = conv_to_posix_path (z:\cygwin\bin)
 1669  140473 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (c:\WINNT\system32, keep-rel, no-add-slash)
 1279  141752 [main] fork 63 normalize_win32_path: c:\WINNT\system32 = normalize_win32_path (c:\WINNT\system32)
 1222  142974 [main] fork 63 mount_info::conv_to_posix_path: /cygdrive/c/WINNT/system32 = conv_to_posix_path (c:\WINNT\system32)
 1212  144186 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (c:\WINNT, keep-rel, no-add-slash)
 1195  145381 [main] fork 63 normalize_win32_path: c:\WINNT = normalize_win32_path (c:\WINNT)
 1206  146587 [main] fork 63 mount_info::conv_to_posix_path: /cygdrive/c/WINNT = conv_to_posix_path (c:\WINNT)
 3836  150423 [main] fork 63 win_env::add_cache: posix /home/sweeks/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/bin:/usr/bin:/home/sweeks/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/bin:/usr/bin:/cygdrive/c/WINNT/system32:/cygdrive/c/WINNT
 1273  151696 [main] fork 63 win_env::add_cache: native PATH=z:\cygwin\home\sweeks\bin;z:\cygwin\sbin;z:\cygwin\usr\sbin;z:\cygwin\usr\local\bin;z:\cygwin\bin;z:\cygwin\bin;z:\cygwin\home\sweeks\bin;z:\cygwin\sbin;z:\cygwin\usr\sbin;z:\cygwin\usr\local\bin;z:\cygwin\bin;z:\cygwin\bin;c:\WINNT\system32;c:\WINNT
 1448  153144 [main] fork 63 posify: env var converted to PATH=/home/sweeks/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/bin:/usr/bin:/home/sweeks/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/bin:/usr/bin:/cygdrive/c/WINNT/system32:/cygdrive/c/WINNT
 2370  155514 [main] fork 63 environ_init: 0xA0108E0: PATH=/home/sweeks/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/bin:/usr/bin:/home/sweeks/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/bin:/usr/bin:/cygdrive/c/WINNT/system32:/cygdrive/c/WINNT
 2300  157814 [main] fork 63 environ_init: 0xA0107D8: PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
 3189  161003 [main] fork 63 environ_init: 0xA010818: PROCESSOR_ARCHITECTURE=x86
 2401  163404 [main] fork 63 environ_init: 0xA010838: PROCESSOR_IDENTIFIER=x86 Family 15 Model 1 Stepping 2, GenuineIntel
 2295  165699 [main] fork 63 environ_init: 0xA010880: PROCESSOR_LEVEL=15
 2442  168141 [main] fork 63 environ_init: 0xA010898: PROCESSOR_REVISION=0102
 2639  170780 [main] fork 63 environ_init: 0xA0108B8: PROMPT=$P$G
 2372  173152 [main] fork 63 environ_init: 0xA0108C8: PS1=\W% 
 2293  175445 [main] fork 63 environ_init: 0xA010C78: PWD=/cygdrive/c/sweeks/tmp
 2282  177727 [main] fork 63 environ_init: 0xA010C98: SHELL=/bin/bash
 3061  180788 [main] fork 63 environ_init: 0xA010CB0: SHLVL=2
 2381  183169 [main] fork 63 environ_init: 0xA010CC0: SSH_CLIENT=192.168.101.1 56946 22
 2288  185457 [main] fork 63 environ_init: 0xA010CE8: SSH_TTY=/dev/tty1
 2269  187726 [main] fork 63 environ_init: 0xA010D00: SYSTEMDRIVE=C:
 2815  190541 [main] fork 63 environ_init: 0xA010D18: SYSTEMROOT=C:\WINNT
 2384  192925 [main] fork 63 getwinenv: can't set native for TEMP= since no environ yet
 2284  195209 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (c:\TEMP, no-keep-rel, no-add-slash)
 1189  196398 [main] fork 63 normalize_win32_path: c:\TEMP = normalize_win32_path (c:\TEMP)
 1191  197589 [main] fork 63 mount_info::conv_to_posix_path: /cygdrive/c/TEMP = conv_to_posix_path (c:\TEMP)
 4331  201920 [main] fork 63 win_env::add_cache: posix /cygdrive/c/TEMP
 1205  203125 [main] fork 63 win_env::add_cache: native TEMP=c:\TEMP
 1191  204316 [main] fork 63 posify: env var converted to TEMP=/cygdrive/c/TEMP
 2274  206590 [main] fork 63 environ_init: 0xA010D48: TEMP=/cygdrive/c/TEMP
 2435  209025 [main] fork 63 environ_init: 0xA010D30: TERM=xterm
 2633  211658 [main] fork 63 getwinenv: can't set native for TMP= since no environ yet
 2303  213961 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (c:\TEMP, no-keep-rel, no-add-slash)
 1181  215142 [main] fork 63 normalize_win32_path: c:\TEMP = normalize_win32_path (c:\TEMP)
 1192  216334 [main] fork 63 mount_info::conv_to_posix_path: /cygdrive/c/TEMP = conv_to_posix_path (c:\TEMP)
 4270  220604 [main] fork 63 win_env::add_cache: posix /cygdrive/c/TEMP
 1279  221883 [main] fork 63 win_env::add_cache: native TMP=c:\TEMP
 1201  223084 [main] fork 63 posify: env var converted to TMP=/cygdrive/c/TEMP
 2277  225361 [main] fork 63 environ_init: 0xA010E98: TMP=/cygdrive/c/TEMP
 2278  227639 [main] fork 63 environ_init: 0xA010FD0: TZ=PST8PDT7,M4.1.0/2,M10.5.0/2
 2756  230395 [main] fork 63 environ_init: 0xA010E88: USER=sweeks
 2742  233137 [main] fork 63 environ_init: 0xA010FF8: USERDOMAIN=WINDOZE
 2319  235456 [main] fork 63 environ_init: 0xA011010: USERNAME=sweeks
 2276  237732 [main] fork 63 environ_init: 0xA011028: USERPROFILE=C:\WINNT\Profiles\sweeks
 3043  240775 [main] fork 63 environ_init: 0xA011058: WINDIR=C:\WINNT
 2380  243155 [main] fork 63 environ_init: 0xA011070: _=/home/sweeks/bin/doit
 5122  248277 [main] fork 63 pinfo_init: pid 63, pgid 63
 2334  250611 [main] fork 63 dtable::extend: size 32, fds 0x615C0128
 7612  258223 [main] fork 63 internal_getlogin: GetUserName() = sweeks
 2277  260500 [main] fork 63 internal_getlogin: User: sweeks, Domain: WINDOZE, Logon Server: WINDOZE
 1326  261826 [main] fork 63 internal_getlogin: Domain: WINDOZE, Logon Server: WINDOZE, Windows Username: sweeks
 1883  263709 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (0)
 1439  265148 [main] fork 63 _cygwin_istext_for_stdio:  _cifs: fd not open
 1331  266479 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (1)
 1200  267679 [main] fork 63 _cygwin_istext_for_stdio:  _cifs: fd not open
 1366  269045 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (2)
 1581  270626 [main] fork 63 _cygwin_istext_for_stdio:  _cifs: fd not open
 1386  272012 [main] fork 63 _open: open (/etc/passwd, 0x20000)
 1621  273633 [main] fork 63 normalize_posix_path: src /etc/passwd
 1544  275177 [main] fork 63 normalize_posix_path: /etc/passwd = normalize_posix_path (/etc/passwd)
 1333  276510 [main] fork 63 mount_info::conv_to_win32_path: conv_to_win32_path (/etc/passwd)
 1387  277897 [main] fork 63 mount_info::conv_to_win32_path: src_path /etc/passwd, dst z:\cygwin\etc\passwd, flags 0xA, rc 0
 8444  286341 [main] fork 63 symlink_info::check: not a symlink
 1579  287920 [main] fork 63 symlink_info::check: 0 = symlink.check (z:\cygwin\etc\passwd, 0x22E7A0) (0xA)
 1293  289213 [main] fork 63 path_conv::check: root_dir(z:\), this->path(z:\cygwin\etc\passwd), set_has_acls(8)
 1588  290801 [main] fork 63 dtable::build_fhandler: fd 3, fh 0x615C02C8
 1686  292487 [main] fork 63 fhandler_base::open: (z:\cygwin\etc\passwd, 0x20000)
 3306  295793 [main] fork 63 fhandler_base::open: 0xE0 = CreateFileA (z:\cygwin\etc\passwd, 0x80000000, 0x7, 0x22EBE0, 0x3, 0x80, 0)
 1336  297129 [main] fork 63 fhandler_base::open: filemode set to text
 1403  298532 [main] fork 63 fhandler_base::open: 1 = fhandler_base::open (z:\cygwin\etc\passwd, 0x20000)
 1356  299888 [main] fork 63 fhandler_disk_file::open: 1 = fhandler_disk_file::open (z:\cygwin\etc\passwd, 0x20000)
 1258  301146 [main] fork 63 _open: 3 = open (/etc/passwd, 0x20000)
 1237  302383 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (3)
 1216  303599 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio says yes
 5425  309024 [main] fork 63 fhandler_disk_file::fstat_helper: 1 = GetFileInformationByHandle (z:\cygwin\etc\passwd, 224)
 2035  311059 [main] fork 63 get_nt_attribute: file: z:\cygwin\etc\passwd
 1883  312942 [main] fork 63 read_sd: file = z:\cygwin\etc\passwd
11144  324086 [main] fork 63 read_sd: file = z:\cygwin\etc\passwd: len=176
 1755  325841 [main] fork 63 _open: open (/etc/group, 0x20000)
 1694  327535 [main] fork 63 normalize_posix_path: src /etc/group
 1494  329029 [main] fork 63 normalize_posix_path: /etc/group = normalize_posix_path (/etc/group)
 1824  330853 [main] fork 63 mount_info::conv_to_win32_path: conv_to_win32_path (/etc/group)
 1372  332225 [main] fork 63 mount_info::conv_to_win32_path: src_path /etc/group, dst z:\cygwin\etc\group, flags 0xA, rc 0
 4612  336837 [main] fork 63 symlink_info::check: not a symlink
 1447  338284 [main] fork 63 symlink_info::check: 0 = symlink.check (z:\cygwin\etc\group, 0x22CB30) (0xA)
 1411  339695 [main] fork 63 path_conv::check: root_dir(z:\), this->path(z:\cygwin\etc\group), set_has_acls(8)
 1733  341428 [main] fork 63 dtable::build_fhandler: fd 4, fh 0x615C03C0
 1352  342780 [main] fork 63 fhandler_base::open: (z:\cygwin\etc\group, 0x20000)
 2920  345700 [main] fork 63 fhandler_base::open: 0xFC = CreateFileA (z:\cygwin\etc\group, 0x80000000, 0x7, 0x22CF70, 0x3, 0x80, 0)
 1376  347076 [main] fork 63 fhandler_base::open: filemode set to text
 1278  348354 [main] fork 63 fhandler_base::open: 1 = fhandler_base::open (z:\cygwin\etc\group, 0x20000)
 1257  349611 [main] fork 63 fhandler_disk_file::open: 1 = fhandler_disk_file::open (z:\cygwin\etc\group, 0x20000)
 1858  351469 [main] fork 63 _open: 4 = open (/etc/group, 0x20000)
 1304  352773 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (4)
 1276  354049 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio says yes
 4788  358837 [main] fork 63 fhandler_disk_file::fstat_helper: 1 = GetFileInformationByHandle (z:\cygwin\etc\group, 252)
 2083  360920 [main] fork 63 get_nt_attribute: file: z:\cygwin\etc\group
 1412  362332 [main] fork 63 read_sd: file = z:\cygwin\etc\group
18806  381138 [main] fork 63 read_sd: file = z:\cygwin\etc\group: len=176
 1828  382966 [main] fork 63 get_nt_attribute: file: z:\cygwin\etc\group 1E4, uid 2000, gid 2001
 1479  384445 [main] fork 63 fhandler_disk_file::fstat_helper: 0 = fstat (, 0x22D240) st_atime=3C94E3A1 st_size=277, st_mode=0x81E4, st_ino=325591779, sizeof=88
 1406  385851 [main] fork 63 fstat64: 0 = fstat (4, 0x22D240)
 1335  387186 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (4)
 1468  388654 [main] fork 63 _cygwin_istext_for_stdio:  _cifs: get_*_binary
 1580  390234 [main] fork 63 setmode_helper: setmode: file was cle now raw
 1331  391565 [main] fork 63 setmode: setmode (4</etc/group>, binary) returns text
 1297  392862 [main] fork 63 _read: read (4, 0xA011200, 1024) blocking, sigcatchers 0
 1286  394148 [main] fork 63 _read: non-interruptible read
 3295  397443 [main] fork 63 fhandler_base::read: returning 277 chars, binary mode
 1609  399052 [main] fork 63 _read: 277 = read (4, 0xA011200, 1024), errno 0
 1369  400421 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (4)
 1557  401978 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio says yes
 1285  403263 [main] fork 63 setmode_helper: setmode: file was raw now cle
 1267  404530 [main] fork 63 setmode: setmode (4</etc/group>, text) returns binary
24108  428638 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (4)
 1708  430346 [main] fork 63 _cygwin_istext_for_stdio:  _cifs: get_*_binary
 1323  431669 [main] fork 63 setmode_helper: setmode: file was cle now raw
 1259  432928 [main] fork 63 setmode: setmode (4</etc/group>, binary) returns text
 1272  434200 [main] fork 63 _read: read (4, 0xA011200, 1024) blocking, sigcatchers 0
 1281  435481 [main] fork 63 _read: non-interruptible read
 2793  438274 [main] fork 63 _read: 0 = read (4, 0xA011200, 1024), errno 0
 1542  439816 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (4)
 1865  441681 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio says yes
 1543  443224 [main] fork 63 setmode_helper: setmode: file was raw now cle
 1258  444482 [main] fork 63 setmode: setmode (4</etc/group>, text) returns binary
 2797  447279 [main] fork 63 _close: close (4)
 1528  448807 [main] fork 63 fhandler_base::close: closing '/etc/group' handle 0xFC
 3334  452141 [main] fork 63 _close: 0 = close (4)
 1558  453699 [main] fork 63 normalize_posix_path: src /etc
 1329  455028 [main] fork 63 normalize_posix_path: /etc = normalize_posix_path (/etc)
 1279  456307 [main] fork 63 mount_info::conv_to_win32_path: conv_to_win32_path (/etc)
 1293  457600 [main] fork 63 mount_info::conv_to_win32_path: src_path /etc, dst z:\cygwin\etc, flags 0xA, rc 0
 5001  462601 [main] fork 63 symlink_info::check: not a symlink
 1394  463995 [main] fork 63 symlink_info::check: 0 = symlink.check (z:\cygwin\etc, 0x22CF60) (0xA)
 1266  465261 [main] fork 63 path_conv::check: root_dir(z:\), this->path(z:\cygwin\etc), set_has_acls(8)
 2939  468200 [main] fork 63 get_nt_attribute: file: z:\cygwin\etc\passwd 1C0, uid 2000, gid 2001
 1416  469616 [main] fork 63 fhandler_disk_file::fstat_helper: 0 = fstat (, 0x22EEB0) st_atime=3C94E3A1 st_size=482, st_mode=0x81C0, st_ino=387896088, sizeof=88
 2504  472120 [main] fork 63 fstat64: 0 = fstat (3, 0x22EEB0)
 1615  473735 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (3)
 1286  475021 [main] fork 63 _cygwin_istext_for_stdio:  _cifs: get_*_binary
 1256  476277 [main] fork 63 setmode_helper: setmode: file was cle now raw
 1255  477532 [main] fork 63 setmode: setmode (3</etc/passwd>, binary) returns text
 1280  478812 [main] fork 63 _read: read (3, 0xA011200, 1024) blocking, sigcatchers 0
 1581  480393 [main] fork 63 _read: non-interruptible read
 2923  483316 [main] fork 63 fhandler_base::read: returning 482 chars, binary mode
 1371  484687 [main] fork 63 _read: 482 = read (3, 0xA011200, 1024), errno 0
 1558  486245 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (3)
 1334  487579 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio says yes
 1264  488843 [main] fork 63 setmode_helper: setmode: file was raw now cle
 1314  490157 [main] fork 63 setmode: setmode (3</etc/passwd>, text) returns binary
 9786  499943 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (3)
 1655  501598 [main] fork 63 _cygwin_istext_for_stdio:  _cifs: get_*_binary
 1506  503104 [main] fork 63 setmode_helper: setmode: file was cle now raw
 1281  504385 [main] fork 63 setmode: setmode (3</etc/passwd>, binary) returns text
 1261  505646 [main] fork 63 _read: read (3, 0xA011200, 1024) blocking, sigcatchers 0
 1259  506905 [main] fork 63 _read: non-interruptible read
 2710  509615 [main] fork 63 _read: 0 = read (3, 0xA011200, 1024), errno 0
 1701  511316 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (3)
 1314  512630 [main] fork 63 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio says yes
 1408  514038 [main] fork 63 setmode_helper: setmode: file was raw now cle
 1267  515305 [main] fork 63 setmode: setmode (3</etc/passwd>, text) returns binary
 2823  518128 [main] fork 63 _close: close (3)
 1371  519499 [main] fork 63 fhandler_base::close: closing '/etc/passwd' handle 0xE0
 3020  522519 [main] fork 63 _close: 0 = close (3)
 2824  525343 [main] fork 63 internal_getlogin: Cygwins Username: sweeks
 3369  528712 [main] fork 63 sigproc_init: process/signal handling enabled(1001)
 4533  533245 [main] fork 63 transport_layer_pipes::connect: Error opening the pipe (2)
24185  557430 [sig] fork 63 wait_sig: sigcatch_nonmain 0x30, sigcatch_main 0x38
 1580  559010 [sig] fork 63 wait_sig: Ready.  dwProcessid 63
70036  629046 [main] fork 63 tty_list::allocate_tty: console 19F0080 already associated with tty0
 3146  632192 [main] fork 63 build_argv: argv[0] = './fork'
 1130  633322 [main] fork 63 build_argv: argc 1
 2173  635495 [main] fork 63 normalize_posix_path: src /dev/piper
 1914  637409 [main] fork 63 normalize_posix_path: /dev/piper = normalize_posix_path (/dev/piper)
 1325  638734 [main] fork 63 mount_info::conv_to_win32_path: conv_to_win32_path (/dev/piper)
 1811  640545 [main] fork 63 mount_info::conv_to_win32_path: src_path /dev/piper, dst \dev\piper, flags 0x2, rc 0
 1415  641960 [main] fork 63 dtable::build_fhandler: fd 0, fh 0x615C02C8
 1306  643266 [main] fork 63 fhandler_base::init: created new fhandler_base for handle 0x1D4
 1276  644542 [main] fork 63 dtable::init_std_file_from_handle: fd 0, handle 0x1D4
 2240  646782 [main] fork 63 normalize_posix_path: src unknown disk file
 1484  648266 [main] fork 63 mount_info::conv_to_posix_path: conv_to_posix_path (c:\sweeks\tmp, no-keep-rel, no-add-slash)
 1569  649835 [main] fork 63 normalize_win32_path: c:\sweeks\tmp = normalize_win32_path (c:\sweeks\tmp)
 1850  651685 [main] fork 63 mount_info::conv_to_posix_path: /cygdrive/c/sweeks/tmp = conv_to_posix_path (c:\sweeks\tmp)
 1289  652974 [main] fork 63 cwdstuff::get: posix /cygdrive/c/sweeks/tmp
 1210  654184 [main] fork 63 cwdstuff::get: (/cygdrive/c/sweeks/tmp) = cwdstuff::get (0x22F950, 260, 1, 0), errno 0
 1200  655384 [main] fork 63 normalize_posix_path: /cygdrive/c/sweeks/tmp/unknown disk file = normalize_posix_path (unknown disk file)
 1189  656573 [main] fork 63 mount_info::conv_to_win32_path: conv_to_win32_path (/cygdrive/c/sweeks/tmp/unknown disk file)
 1195  657768 [main] fork 63 mount_info::cygdrive_win32_path: src '/cygdrive/c/sweeks/tmp/unknown disk file', dst 'c:\sweeks\tmp\unknown disk file'
 1194  658962 [main] fork 63 mount_info::conv_to_win32_path: src_path /cygdrive/c/sweeks/tmp/unknown disk file, dst c:\sweeks\tmp\unknown disk file, flags 0x22, rc 0
 3292  662254 [main] fork 63 symlink_info::check: GetFileAttributes (c:\sweeks\tmp\unknown disk file) failed
 1383  663637 [main] fork 63 geterrno_from_win_error: windows error 2 == errno 2
 1409  665046 [main] fork 63 symlink_info::check: GetFileAttributes (c:\sweeks\tmp\unknown disk file.lnk) failed
 1499  666545 [main] fork 63 geterrno_from_win_error: windows error 2 == errno 2
 1266  667811 [main] fork 63 symlink_info::check: 0 = symlink.check (c:\sweeks\tmp\unknown disk file, 0x22F610) (0x22)
 1205  669016 [main] fork 63 mount_info::conv_to_win32_path: conv_to_win32_path (/cygdrive/c/sweeks/tmp)
 2297  671313 [main] fork 63 mount_info::cygdrive_win32_path: src '/cygdrive/c/sweeks/tmp', dst 'c:\sweeks\tmp'
 1325  672638 [main] fork 63 mount_info::conv_to_win32_path: src_path /cygdrive/c/sweeks/tmp, dst c:\sweeks\tmp, flags 0x22, rc 0
 1419  674057 [main] fork 63 symlink_info::check: not a symlink
 1272  675329 [main] fork 63 symlink_info::check: 0 = symlink.check (c:\sweeks\tmp, 0x22F610) (0x22)
 1204  676533 [main] fork 63 path_conv::check: root_dir(c:\), this->path(c:\sweeks\tmp\unknown disk file), set_has_acls(8)
 1226  677759 [main] fork 63 dtable::build_fhandler: fd 1, fh 0x615C03C0
 1227  678986 [main] fork 63 fhandler_base::init: created new fhandler_base for handle 0x78
 2273  681259 [main] fork 63 dtable::init_std_file_from_handle: fd 1, handle 0x78
 2128  683387 [main] fork 63 normalize_posix_path: src unknown disk file
 1267  684654 [main] fork 63 cwdstuff::get: posix /cygdrive/c/sweeks/tmp
 1196  685850 [main] fork 63 cwdstuff::get: (/cygdrive/c/sweeks/tmp) = cwdstuff::get (0x22F940, 260, 1, 0), errno 0
 1194  687044 [main] fork 63 normalize_posix_path: /cygdrive/c/sweeks/tmp/unknown disk file = normalize_posix_path (unknown disk file)
 1187  688231 [main] fork 63 mount_info::conv_to_win32_path: conv_to_win32_path (/cygdrive/c/sweeks/tmp/unknown disk file)
 1326  689557 [main] fork 63 mount_info::cygdrive_win32_path: src '/cygdrive/c/sweeks/tmp/unknown disk file', dst 'c:\sweeks\tmp\unknown disk file'
 1748  691305 [main] fork 63 mount_info::conv_to_win32_path: src_path /cygdrive/c/sweeks/tmp/unknown disk file, dst c:\sweeks\tmp\unknown disk file, flags 0x22, rc 0
 1888  693193 [main] fork 63 symlink_info::check: GetFileAttributes (c:\sweeks\tmp\unknown disk file) failed
 1318  694511 [main] fork 63 geterrno_from_win_error: windows error 2 == errno 2
 1397  695908 [main] fork 63 symlink_info::check: GetFileAttributes (c:\sweeks\tmp\unknown disk file.lnk) failed
 1258  697166 [main] fork 63 geterrno_from_win_error: windows error 2 == errno 2
 1196  698362 [main] fork 63 symlink_info::check: 0 = symlink.check (c:\sweeks\tmp\unknown disk file, 0x22F600) (0x22)
 1369  699731 [main] fork 63 mount_info::conv_to_win32_path: conv_to_win32_path (/cygdrive/c/sweeks/tmp)
 1528  701259 [main] fork 63 mount_info::cygdrive_win32_path: src '/cygdrive/c/sweeks/tmp', dst 'c:\sweeks\tmp'
 1265  702524 [main] fork 63 mount_info::conv_to_win32_path: src_path /cygdrive/c/sweeks/tmp, dst c:\sweeks\tmp, flags 0x22, rc 0
 1365  703889 [main] fork 63 symlink_info::check: not a symlink
 1259  705148 [main] fork 63 symlink_info::check: 0 = symlink.check (c:\sweeks\tmp, 0x22F600) (0x22)
 1201  706349 [main] fork 63 path_conv::check: root_dir(c:\), this->path(c:\sweeks\tmp\unknown disk file), set_has_acls(8)
 1209  707558 [main] fork 63 dtable::build_fhandler: fd 2, fh 0x615C0708
 1199  708757 [main] fork 63 fhandler_base::init: created new fhandler_base for handle 0x54
 1350  710107 [main] fork 63 dtable::init_std_file_from_handle: fd 2, handle 0x54
 1792  711899 [main] fork 63 dll_list::init: here
 1480  713379 [main] fork 63 dll_crt0_1: user_data->main 0x401094
 1356  714735 [main] fork 63 sig_send: pid 63, signal -2, its_me 1
 1376  716111 [main] fork 63 sig_send: Waiting for thiscomplete 0x48
 1348  717459 [sig] fork 63 wait_sig: awake
 1221  718680 [sig] fork 63 wait_sig: processing signal -2
 1385  720065 [sig] fork 63 wait_sig: set main thread completion event
 1498  721563 [sig] fork 63 wait_sig: looping
 1299  722862 [main] fork 63 sig_send: returning 0 from sending signal -2
 1330  724192 [main] fork 63 _write: write (2, 0x22F758, 9)
 1260  725452 [main] fork 63 fhandler_base::write: binary write
starting
 1560  727012 [main] fork 63 fhandler_base::write: 9 = write (0x22F758, 9)
 1251  728263 [main] fork 63 _write: 9 = write (2, 0x22F758, 9)
 1620  729883 [main] fork 63 mmap64: addr 0, len 4096, prot 3, flags 22, fd -1, off 0
 4448  734331 [main] fork 63 fhandler_disk_file::mmap: 2A230000 = MapViewOfFileEx (h:88, access:1, 0, off:0, len:65536, addr:0)
 4635  738966 [main] fork 63 mmap64: 2A230000 = mmap() succeeded
 2102  741068 [main] fork 63 fork: entering
 3084  744152 [main] fork 63 subproc_init: started wait_subproc thread 0x74
 3404  747556 [main] fork 63 stack_base: bottom 0x230000, top 0x30000, stack 0x22F808, size 2040, reserve 2097152
 1584  749140 [main] fork 63 fork_parent: CreateProcess (c:\sweeks\tmp\fork.exe, c:\sweeks\tmp\fork.exe, 0, 0, 1, 20, 0, 0, 0x22FC78, 0x22FCC8)
 8211  757351 [main] fork 63 proc_subproc: args: 1, 2291816
 1886  759237 [main] fork 63 proc_subproc: added pid 138 to wait list, slot 0, winpid 0x8A, handle 0x198
 3194  762431 [proc] fork 63 wait_subproc: starting
 1377  763808 [proc] fork 63 wait_subproc: looping
14670  778478 [main] fork 63 proc_subproc: returning 1
 1383  779861 [main] fork 63 sync_with_child: waiting for child.  reason: waiting for longjmp, hang_child 1
**********************************************
Program name: c:\sweeks\tmp\fork.exe (138)
App version:  1003.10, api: 0.51
DLL version:  1003.11, api: 0.51
DLL build:    20020316 02:33:42SNP
OS version:   Windows NT-4.0
Date/Time:    2002-03-17 10:41:53
**********************************************
 1460   10272 [main] fork 138 open_shared: name shared, shared 0xA000000 (wanted 0xA000000), h 0x148
10409   20681 [main] fork 138 heap_init: heap base 0xA010000, heap top 0xA012000
 1818   22499 [main] fork 138 open_shared: name sweeks, shared 0x890000 (wanted 0x0), h 0x1C
 1301   23800 [main] fork 138 memory_init: opening mount table for 'sweeks' at 0xA010000
 1285   25085 [main] fork 138 memory_init: mount table version 41FB at 0x890000
 1745   26830 [main] fork 138 events_init: windows_system_directory 'C:\WINNT\System32\', windows_system_directory_length 18
 1785   28615 [main] fork 138 events_init: cygwin_hmodule 0x61000000
 3384   31999 [main] fork 138 fork_child: child is running.  pid 138, ppid 63, stack here 0x22FCE8
 1604   33603 [main] fork 138 fork_child: Impersonation of child, token: -1
 1462   35065 [main] fork 138 sync_with_parent: signalling parent: after longjmp.
79233  859094 [main] fork 63 sync_with_child: child signalled me
 1257  860351 [main] fork 63 fork_parent: child is alive (but stopped)
 2001  862352 [main] fork 63 fork_copy: child handle 0x198, low 0x402000, high 0x402014, res 1
 1629  863981 [main] fork 63 fork_copy: child handle 0x198, low 0x403000, high 0x40300C, res 1
 2023  866004 [main] fork 63 fork_copy: child handle 0x198, low 0xA010000, high 0xA012000, res 1
 1781  867785 [main] fork 63 fork_copy: child handle 0x198, low 0x22FD00, high 0x230000, res 1
 2299  870084 [main] fork 63 fork_copy: child handle 0x198, low 0x610A3000, high 0x610A75E0, res 1
 8445  878529 [main] fork 63 fork_copy: child handle 0x198, low 0x610C3000, high 0x610F9410, res 1
 1439  879968 [main] fork 63 fork_copy: done
 1788  881756 [main] fork 63 resume_child: signalled child
 1295  883051 [main] fork 63 sync_with_child: waiting for child.  reason: child loading dlls, hang_child 0
849575  884640 [main] fork 138 sync_with_parent: awake
 1332  885972 [main] fork 138 sync_with_parent: no problems
 1212  887184 [main] fork 138 fork_child: hParent 0xF4, child 1 first_dll 0x0, load_dlls 0
 1241  888425 [main] fork 138 set_file_api_mode: File APIs set to ANSI
 1295  889720 [main] fork 138 sync_with_parent: signalling parent: performed fork fixup.
 8410  891461 [main] fork 63 sync_with_child: child signalled me
 1346  892807 [main] fork 63 fork: 138 = fork()
 1547  894354 [main] fork 63 _write: write (2, 0x22F758, 6)
 1413  895767 [main] fork 63 fhandler_base::write: binary write
hello
 1403  897170 [main] fork 63 fhandler_base::write: 6 = write (0x22F758, 6)
 1483  898653 [main] fork 63 _write: 6 = write (2, 0x22F758, 6)
 1313  899966 [main] fork 63 munmap: munmap (addr 2A230000, len 4096)
 3091  903057 [main] fork 63 munmap: 0 = munmap(): 2A230000
 1437  904494 [main] fork 63 do_exit: do_exit (0)
 1324  905818 [main] fork 63 void: 0x0 = signal (20, 0x1)
 1347  907165 [main] fork 63 void: 0x0 = signal (1, 0x1)
 1304  908469 [main] fork 63 void: 0x0 = signal (2, 0x1)
 1204  909673 [main] fork 63 void: 0x0 = signal (3, 0x1)
21544  911264 [main] fork 138 fixup_mmaps_after_fork: recreate_mmaps_after_fork, mmapped_areas 0xA011BF0
 1304  912568 [main] fork 138 fixup_mmaps_after_fork: fd -1, h 88, access 1, offset 0, size 65536, address 0x2A230000
 914381 [main] fork 138 fixup_mmaps_after_fork: ReadProcessMemory failed for MAP_PRIVATE address 0x2A230000, Win32 error 998
11402  921075 [main] fork 63 fhandler_base::close: closing '/dev/piper' handle 0x1D4
 1813  914381 [main] fork 138 fixup_mmaps_after_fork: ReadProcessMemory failed for MAP_PRIVATE address 0x2A230000, Win32 error 998
c:\sweeks\tmp\fork.exe: *** recreate_mmaps_after_fork_failed
156122 1070503 [main] fork 138 proc_terminate: nchildren 0, nzombies 0
 2029 1072532 [main] fork 138 proc_terminate: leaving
 1536 1074068 [main] fork 138 sigproc_terminate: entering
 1239 1075307 [main] fork 138 sigproc_terminate: done
 1360 1076667 [main] fork 138 __to_clock_t: dwHighDateTime 0, dwLowDateTime 801152
 1368 1078035 [main] fork 138 __to_clock_t: total 00000000 00000050
 1321 1079356 [main] fork 138 __to_clock_t: dwHighDateTime 0, dwLowDateTime 100144
 1222 1080578 [main] fork 138 __to_clock_t: total 00000000 0000000A
164782 1085857 [main] fork 63 fhandler_base::close: closing 'unknown disk file' handle 0x78
 1573 1087430 [main] fork 63 fhandler_base::close: closing 'unknown disk file' handle 0x54
 1391 1088821 [main] fork 63 proc_terminate: nchildren 1, nzombies 0
 2483 1091304 [proc] fork 63 wait_subproc: looping
 2939 1094243 [proc] fork 63 wait_subproc: done
 3571 1097814 [main] fork 63 proc_subproc: args: 3, 1
 1299 1099113 [main] fork 63 proc_subproc: clear waiting threads
 1207 1100320 [main] fork 63 proc_subproc: finished clearing
 3189 1103509 [main] fork 63 proc_subproc: returning 1
 1417 1104926 [main] fork 63 proc_terminate: 138(138) closed child handle
 1372 1106298 [main] fork 63 proc_terminate: leaving
 1263 1107561 [main] fork 63 sigproc_terminate: entering
 1205 1108766 [main] fork 63 sigproc_terminate: done
 1205 1109971 [main] fork 63 do_exit: 63 == pgrp 63, send SIG{HUP,CONT} to stopped children
 1603 1111574 [main] fork 63 kill_pgrp: pid 63, signal -1
13056 1124630 [main] fork 63 pinfo::init: execed process windows pid 191, cygwin pid 117
 1750 1126380 [main] fork 63 pinfo::init: execed process windows pid 196, cygwin pid 238
 1772 1128152 [main] fork 63 kill_pgrp: -1 = kill (63, -1)
 6432 1134584 [main] fork 63 do_exit: 63 == sid 63, send SIGHUP to children
 2814 1137398 [main] fork 63 __to_clock_t: dwHighDateTime 0, dwLowDateTime 7310512
 1258 1138656 [main] fork 63 __to_clock_t: total 00000000 000002DB
 1227 1139883 [main] fork 63 __to_clock_t: dwHighDateTime 0, dwLowDateTime 200288
 1733 1141616 [main] fork 63 __to_clock_t: total 00000000 00000014
86887 1167465 [main] fork 138 _pinfo::exit: Calling ExitProcess 1
47644 1189260 [main] fork 63 _pinfo::exit: Calling ExitProcess 0

--
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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: mmap of large amount returns invalid pointer
  2002-03-17 11:37       ` Stephen Weeks
@ 2002-03-19  3:43         ` Corinna Vinschen
  2002-03-21 11:28           ` Stephen Weeks
  0 siblings, 1 reply; 14+ messages in thread
From: Corinna Vinschen @ 2002-03-19  3:43 UTC (permalink / raw)
  To: cygwin

On Sun, Mar 17, 2002 at 10:51:29AM -0800, Stephen Weeks wrote:
> 
> Corinna:
> > Anyway, I've checked in a patch.  It now checks if VirtualProtect
> > failed and then mmap() also fails.  Try the next developers snapshot,
> > please.
> 
> Thanks for the fix.  I tried the 2002-Mar-16 snapshot and the test
> program works correctly.  However, a slightly modified program that
> munmaps the memory in the parent process and then exits does not work
> reliably.  I have included the test case and an strace of a failed run

I'm on vacation currently so I'm not really inclined to test that
by myself.  Could you please describe what happens in the error case
in plain English?  I see that there could be a timing problem in
fork() but I'd like to read how the error looks like.

Thanks,
Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Developer                                mailto:cygwin@cygwin.com
Red Hat, Inc.

--
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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: mmap of large amount returns invalid pointer
  2002-03-19  3:43         ` Corinna Vinschen
@ 2002-03-21 11:28           ` Stephen Weeks
  2002-04-09  9:35             ` Corinna Vinschen
  0 siblings, 1 reply; 14+ messages in thread
From: Stephen Weeks @ 2002-03-21 11:28 UTC (permalink / raw)
  To: cygwin


> Could you please describe what happens in the error case
> in plain English?  I see that there could be a timing problem in
> fork() but I'd like to read how the error looks like.

The process mmaps some memory, writes to the memory, and then forks.
After the fork, the parent unmaps the memory and exits, while the
child reads from the memory.  From looking at the strace, I see that
the Cygwin fork implementation allows the parent process to continue
before ensuring that the child has completed the memory copy.  In this
case, the parent unmaps the memory before the child can copy it.
Hence, we see the following line in the strace, which indicates the
failure in the child process (138).

 1813  914381 [main] fork 138 fixup_mmaps_after_fork: ReadProcessMemory failed for MAP_PRIVATE address 0x2A230000, Win32 error 998
c:\sweeks\tmp\fork.exe: *** recreate_mmaps_after_fork_failed

--
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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: mmap of large amount returns invalid pointer
  2002-03-21 11:28           ` Stephen Weeks
@ 2002-04-09  9:35             ` Corinna Vinschen
  0 siblings, 0 replies; 14+ messages in thread
From: Corinna Vinschen @ 2002-04-09  9:35 UTC (permalink / raw)
  To: cygwin

On Thu, Mar 21, 2002 at 11:15:52AM -0800, Stephen Weeks wrote:
> 
> > Could you please describe what happens in the error case
> > in plain English?  I see that there could be a timing problem in
> > fork() but I'd like to read how the error looks like.
> 
> The process mmaps some memory, writes to the memory, and then forks.
> After the fork, the parent unmaps the memory and exits, while the
> child reads from the memory.  From looking at the strace, I see that
> the Cygwin fork implementation allows the parent process to continue
> before ensuring that the child has completed the memory copy.  In this
> case, the parent unmaps the memory before the child can copy it.
> Hence, we see the following line in the strace, which indicates the
> failure in the child process (138).
> 
>  1813  914381 [main] fork 138 fixup_mmaps_after_fork: ReadProcessMemory failed for MAP_PRIVATE address 0x2A230000, Win32 error 998
> c:\sweeks\tmp\fork.exe: *** recreate_mmaps_after_fork_failed

I've checked in a fix.  Please try the next devlopers snapshot
or current from CVS.

Thanks for the report and the testcase,
Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Developer                                mailto:cygwin@cygwin.com
Red Hat, Inc.

--
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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: mmap of large amount returns invalid pointer
  2002-03-12 11:17   ` Stephen Weeks
@ 2002-03-12 12:44     ` Corinna Vinschen
  0 siblings, 0 replies; 14+ messages in thread
From: Corinna Vinschen @ 2002-03-12 12:44 UTC (permalink / raw)
  To: cygwin

On Tue, Mar 12, 2002 at 10:08:05AM -0800, Stephen Weeks wrote:
> 
> > However, before talking further about this I'd like you to run your
> > below test application again but this time under strace.  Could
> > you please send the strace output to this list (it's not that long)?
> 
> Here is the strace output.

Thanks for the strace.

Boy, that's a problem... the mmap() succeeds, the following printf
SEGV's as a follow up error.  I asked you for the strace to be
really sure.  The same happens on my box.  It's a surprising
error raised by a Win32 call.  Currently I don't know how to easily
avoid that.  Hmm.

Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Developer                                mailto:cygwin@cygwin.com
Red Hat, Inc.

--
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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: mmap of large amount returns invalid pointer
  2002-03-12  2:23 ` Corinna Vinschen
@ 2002-03-12 11:17   ` Stephen Weeks
  2002-03-12 12:44     ` Corinna Vinschen
  0 siblings, 1 reply; 14+ messages in thread
From: Stephen Weeks @ 2002-03-12 11:17 UTC (permalink / raw)
  To: cygwin


> However, before talking further about this I'd like you to run your
> below test application again but this time under strace.  Could
> you please send the strace output to this list (it's not that long)?

Here is the strace output.

**********************************************
Program name: c:\mmap.exe (159)
App version:  1003.10, api: 0.51
DLL version:  1003.10, api: 0.51
DLL build:    2002-02-25 11:14
OS version:   Windows NT-4.0
Date/Time:    2002-03-12 10:02:03
**********************************************
 7637   19265 [main] mmap 159 environ_init: 0xA010420: !C:=C:\WINNT\Profiles\sweeks\Desktop
 2224   21489 [main] mmap 159 environ_init: 0xA010450: !Z:=Z:\cygwin\bin
 2542   24031 [main] mmap 159 environ_init: 0xA010468: COMPUTERNAME=WINDOZE
 2498   26529 [main] mmap 159 environ_init: 0xA010488: COMSPEC=C:\WINNT\system32\cmd.exe
 2338   28867 [main] mmap 159 parse_options: binmode 65536
 2466   31333 [main] mmap 159 parse_options: ntsec 1
 2297   33630 [main] mmap 159 parse_options: tty 1001
 2517   36147 [main] mmap 159 parse_options: returning
 1180   37327 [main] mmap 159 environ_init: 0xA0104B0: CYGWIN=binmode ntsec tty 
 2166   39493 [main] mmap 159 getwinenv: can't set native for HOME= since no environ yet
 2358   41851 [main] mmap 159 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\home\sweeks, no-keep-rel, no-add-slash)
 1392   43243 [main] mmap 159 normalize_win32_path: z:\cygwin\home\sweeks = normalize_win32_path (z:\cygwin\home\sweeks)
 2272   45515 [main] mmap 159 mount_info::conv_to_posix_path: /home/sweeks = conv_to_posix_path (z:\cygwin\home\sweeks)
 3429   48944 [main] mmap 159 win_env::add_cache: posix /home/sweeks
 1132   50076 [main] mmap 159 win_env::add_cache: native HOME=z:\cygwin\home\sweeks
 1137   51213 [main] mmap 159 posify: env var converted to HOME=/home/sweeks
 2183   53396 [main] mmap 159 environ_init: 0xA010520: HOME=/home/sweeks
 2708   56104 [main] mmap 159 environ_init: 0xA010500: HOMEDRIVE=C:
 2249   58353 [main] mmap 159 environ_init: 0xA010668: HOMEPATH=\
 2184   60537 [main] mmap 159 environ_init: 0xA010678: LOGONSERVER=\\WINDOZE
 2133   62670 [main] mmap 159 environ_init: 0xA010698: MAKE_MODE=unix
 2164   64834 [main] mmap 159 environ_init: 0xA0106B0: MANPATH=:/usr/ssl/man
 2669   67503 [main] mmap 159 environ_init: 0xA0106D0: NUMBER_OF_PROCESSORS=1
 2156   69659 [main] mmap 159 environ_init: 0xA0106F0: OLDPWD=/home/sweeks
 2169   71828 [main] mmap 159 environ_init: 0xA010708: OS2LIBPATH=C:\WINNT\system32\os2\dll;
 2164   73992 [main] mmap 159 environ_init: 0xA010738: OS=Windows_NT
 3044   77036 [main] mmap 159 getwinenv: can't set native for PATH= since no environ yet
 2261   79297 [main] mmap 159 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\home\sweeks\bin, keep-rel, no-add-slash)
 1177   80474 [main] mmap 159 normalize_win32_path: z:\cygwin\home\sweeks\bin = normalize_win32_path (z:\cygwin\home\sweeks\bin)
 1156   81630 [main] mmap 159 mount_info::conv_to_posix_path: /home/sweeks/bin = conv_to_posix_path (z:\cygwin\home\sweeks\bin)
 1115   82745 [main] mmap 159 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\sbin, keep-rel, no-add-slash)
 1134   83879 [main] mmap 159 normalize_win32_path: z:\cygwin\sbin = normalize_win32_path (z:\cygwin\sbin)
 1131   85010 [main] mmap 159 mount_info::conv_to_posix_path: /sbin = conv_to_posix_path (z:\cygwin\sbin)
 1606   86616 [main] mmap 159 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\usr\sbin, keep-rel, no-add-slash)
 1192   87808 [main] mmap 159 normalize_win32_path: z:\cygwin\usr\sbin = normalize_win32_path (z:\cygwin\usr\sbin)
 1142   88950 [main] mmap 159 mount_info::conv_to_posix_path: /usr/sbin = conv_to_posix_path (z:\cygwin\usr\sbin)
 1104   90054 [main] mmap 159 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\usr\local\bin, keep-rel, no-add-slash)
 1134   91188 [main] mmap 159 normalize_win32_path: z:\cygwin\usr\local\bin = normalize_win32_path (z:\cygwin\usr\local\bin)
 1130   92318 [main] mmap 159 mount_info::conv_to_posix_path: /usr/local/bin = conv_to_posix_path (z:\cygwin\usr\local\bin)
 1134   93452 [main] mmap 159 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\bin, keep-rel, no-add-slash)
 1396   94848 [main] mmap 159 normalize_win32_path: z:\cygwin\bin = normalize_win32_path (z:\cygwin\bin)
 1618   96466 [main] mmap 159 mount_info::conv_to_posix_path: /usr/bin = conv_to_posix_path (z:\cygwin\bin)
 1193   97659 [main] mmap 159 mount_info::conv_to_posix_path: conv_to_posix_path (z:\cygwin\bin, keep-rel, no-add-slash)
 1145   98804 [main] mmap 159 normalize_win32_path: z:\cygwin\bin = normalize_win32_path (z:\cygwin\bin)
 1139   99943 [main] mmap 159 mount_info::conv_to_posix_path: /usr/bin = conv_to_posix_path (z:\cygwin\bin)
 1132  101075 [main] mmap 159 mount_info::conv_to_posix_path: conv_to_posix_path (c:\WINNT\system32, keep-rel, no-add-slash)
 1133  102208 [main] mmap 159 normalize_win32_path: c:\WINNT\system32 = normalize_win32_path (c:\WINNT\system32)
 1134  103342 [main] mmap 159 mount_info::conv_to_posix_path: /cygdrive/c/WINNT/system32 = conv_to_posix_path (c:\WINNT\system32)
 1109  104451 [main] mmap 159 mount_info::conv_to_posix_path: conv_to_posix_path (c:\WINNT, keep-rel, no-add-slash)
 1384  105835 [main] mmap 159 normalize_win32_path: c:\WINNT = normalize_win32_path (c:\WINNT)
 1330  107165 [main] mmap 159 mount_info::conv_to_posix_path: /cygdrive/c/WINNT = conv_to_posix_path (c:\WINNT)
 3235  110400 [main] mmap 159 win_env::add_cache: posix /home/sweeks/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/bin:/usr/bin:/cygdrive/c/WINNT/system32:/cygdrive/c/WINNT
 1085  111485 [main] mmap 159 win_env::add_cache: native PATH=z:\cygwin\home\sweeks\bin;z:\cygwin\sbin;z:\cygwin\usr\sbin;z:\cygwin\usr\local\bin;z:\cygwin\bin;z:\cygwin\bin;c:\WINNT\system32;c:\WINNT
 1126  112611 [main] mmap 159 posify: env var converted to PATH=/home/sweeks/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/bin:/usr/bin:/cygdrive/c/WINNT/system32:/cygdrive/c/WINNT
 2161  114772 [main] mmap 159 environ_init: 0xA0107E8: PATH=/home/sweeks/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/bin:/usr/bin:/cygdrive/c/WINNT/system32:/cygdrive/c/WINNT
 2443  117215 [main] mmap 159 environ_init: 0xA010750: PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
 2319  119534 [main] mmap 159 environ_init: 0xA010790: PROCESSOR_ARCHITECTURE=x86
 2176  121710 [main] mmap 159 environ_init: 0xA010A30: PROCESSOR_IDENTIFIER=x86 Family 15 Model 1 Stepping 2, GenuineIntel
 2172  123882 [main] mmap 159 environ_init: 0xA0107B0: PROCESSOR_LEVEL=15
 2382  126264 [main] mmap 159 environ_init: 0xA0107C8: PROCESSOR_REVISION=0102
 2401  128665 [main] mmap 159 environ_init: 0xA010A78: PROMPT=$P$G
 2196  130861 [main] mmap 159 environ_init: 0xA010A88: PS1=\W% 
 2124  132985 [main] mmap 159 environ_init: 0xA010A98: PWD=/cygdrive/c
 2411  135396 [main] mmap 159 environ_init: 0xA010AB0: SHLVL=1
 2215  137611 [main] mmap 159 environ_init: 0xA010AC0: SYSTEMDRIVE=C:
 2561  140172 [main] mmap 159 environ_init: 0xA010AD8: SYSTEMROOT=C:\WINNT
 2177  142349 [main] mmap 159 getwinenv: can't set native for TEMP= since no environ yet
 2170  144519 [main] mmap 159 mount_info::conv_to_posix_path: conv_to_posix_path (c:\TEMP, no-keep-rel, no-add-slash)
 1346  145865 [main] mmap 159 normalize_win32_path: c:\TEMP = normalize_win32_path (c:\TEMP)
 1178  147043 [main] mmap 159 mount_info::conv_to_posix_path: /cygdrive/c/TEMP = conv_to_posix_path (c:\TEMP)
 3395  150438 [main] mmap 159 win_env::add_cache: posix /cygdrive/c/TEMP
 1139  151577 [main] mmap 159 win_env::add_cache: native TEMP=c:\TEMP
 1093  152670 [main] mmap 159 posify: env var converted to TEMP=/cygdrive/c/TEMP
 2157  154827 [main] mmap 159 environ_init: 0xA010B08: TEMP=/cygdrive/c/TEMP
 2439  157266 [main] mmap 159 environ_init: 0xA010AF0: TERM=cygwin
 2423  159689 [main] mmap 159 getwinenv: can't set native for TMP= since no environ yet
 2216  161905 [main] mmap 159 mount_info::conv_to_posix_path: conv_to_posix_path (c:\TEMP, no-keep-rel, no-add-slash)
 1125  163030 [main] mmap 159 normalize_win32_path: c:\TEMP = normalize_win32_path (c:\TEMP)
 1137  164167 [main] mmap 159 mount_info::conv_to_posix_path: /cygdrive/c/TEMP = conv_to_posix_path (c:\TEMP)
 3457  167624 [main] mmap 159 win_env::add_cache: posix /cygdrive/c/TEMP
 1391  169015 [main] mmap 159 win_env::add_cache: native TMP=c:\TEMP
 1326  170341 [main] mmap 159 posify: env var converted to TMP=/cygdrive/c/TEMP
 2172  172513 [main] mmap 159 environ_init: 0xA010C58: TMP=/cygdrive/c/TEMP
 2127  174640 [main] mmap 159 environ_init: 0xA010C48: USER=sweeks
 2458  177098 [main] mmap 159 environ_init: 0xA010D90: USERDOMAIN=WINDOZE
 2173  179271 [main] mmap 159 environ_init: 0xA010DA8: USERNAME=sweeks
 2307  181578 [main] mmap 159 environ_init: 0xA010DC0: USERPROFILE=C:\WINNT\Profiles\sweeks
 2167  183745 [main] mmap 159 environ_init: 0xA010DF0: WINDIR=C:\WINNT
 2514  186259 [main] mmap 159 environ_init: 0xA010E08: _=/usr/bin/strace
 4850  191109 [main] mmap 159 pinfo_init: pid 159, pgid 159
 1952  193061 [main] mmap 159 dtable::extend: size 32, fds 0x61560128
 4276  197337 [main] mmap 159 internal_getlogin: GetUserName() = sweeks
 1569  198906 [main] mmap 159 internal_getlogin: User: sweeks, Domain: WINDOZE, Logon Server: WINDOZE
 1162  200068 [main] mmap 159 internal_getlogin: Domain: WINDOZE, Logon Server: WINDOZE, Windows Username: sweeks
 1746  201814 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (0)
 1341  203155 [main] mmap 159 _cygwin_istext_for_stdio:  _cifs: fd not open
 1270  204425 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (1)
 1390  205815 [main] mmap 159 _cygwin_istext_for_stdio:  _cifs: fd not open
 1142  206957 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (2)
 1131  208088 [main] mmap 159 _cygwin_istext_for_stdio:  _cifs: fd not open
 1221  209309 [main] mmap 159 _open: open (/etc/passwd, 0x20000)
 1749  211058 [main] mmap 159 normalize_posix_path: src /etc/passwd
 1498  212556 [main] mmap 159 normalize_posix_path: /etc/passwd = normalize_posix_path (/etc/passwd)
 1267  213823 [main] mmap 159 mount_info::conv_to_win32_path: conv_to_win32_path (/etc/passwd)
 1153  214976 [main] mmap 159 mount_info::conv_to_win32_path: src_path /etc/passwd, dst z:\cygwin\etc\passwd, flags 0xA, rc 0
 5890  220866 [main] mmap 159 symlink_info::check: not a symlink
 1752  222618 [main] mmap 159 symlink_info::check: 0 = symlink.check (z:\cygwin\etc\passwd, 0x22E7A0) (0xA)
 1224  223842 [main] mmap 159 path_conv::check: root_dir(z:\), this->path(z:\cygwin\etc\passwd), set_has_acls(8)
 1271  225113 [main] mmap 159 dtable::build_fhandler: fd 3, fh 0x615602C8
 1682  226795 [main] mmap 159 fhandler_base::open: (z:\cygwin\etc\passwd, 0x20000)
 3198  229993 [main] mmap 159 fhandler_base::open: 0x48 = CreateFileA (z:\cygwin\etc\passwd, 0x80000000, 0x7, 0x22EBE0, 0x3, 0x80, 0)
 1303  231296 [main] mmap 159 fhandler_base::open: filemode set to text
 1468  232764 [main] mmap 159 fhandler_base::open: 1 = fhandler_base::open (z:\cygwin\etc\passwd, 0x20000)
 1325  234089 [main] mmap 159 fhandler_disk_file::open: 1 = fhandler_disk_file::open (z:\cygwin\etc\passwd, 0x20000)
 1180  235269 [main] mmap 159 _open: 3 = open (/etc/passwd, 0x20000)
 1165  236434 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (3)
 1297  237731 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio says yes
 4917  242648 [main] mmap 159 fhandler_disk_file::fstat_helper: 1 = GetFileInformationByHandle (z:\cygwin\etc\passwd, 72)
 1625  244273 [main] mmap 159 get_nt_attribute: file: z:\cygwin\etc\passwd
 1965  246238 [main] mmap 159 read_sd: file = z:\cygwin\etc\passwd
11424  257662 [main] mmap 159 read_sd: file = z:\cygwin\etc\passwd: len=176
 1588  259250 [main] mmap 159 _open: open (/etc/group, 0x20000)
 1286  260536 [main] mmap 159 normalize_posix_path: src /etc/group
 1414  261950 [main] mmap 159 normalize_posix_path: /etc/group = normalize_posix_path (/etc/group)
 1102  263052 [main] mmap 159 mount_info::conv_to_win32_path: conv_to_win32_path (/etc/group)
 1299  264351 [main] mmap 159 mount_info::conv_to_win32_path: src_path /etc/group, dst z:\cygwin\etc\group, flags 0xA, rc 0
 4618  268969 [main] mmap 159 symlink_info::check: not a symlink
 1310  270279 [main] mmap 159 symlink_info::check: 0 = symlink.check (z:\cygwin\etc\group, 0x22CBC0) (0xA)
 1384  271663 [main] mmap 159 path_conv::check: root_dir(z:\), this->path(z:\cygwin\etc\group), set_has_acls(8)
 1293  272956 [main] mmap 159 dtable::build_fhandler: fd 4, fh 0x615603C0
 1516  274472 [main] mmap 159 fhandler_base::open: (z:\cygwin\etc\group, 0x20000)
 2781  277253 [main] mmap 159 fhandler_base::open: 0x70 = CreateFileA (z:\cygwin\etc\group, 0x80000000, 0x7, 0x22D000, 0x3, 0x80, 0)
 1308  278561 [main] mmap 159 fhandler_base::open: filemode set to text
 1263  279824 [main] mmap 159 fhandler_base::open: 1 = fhandler_base::open (z:\cygwin\etc\group, 0x20000)
 1059  280883 [main] mmap 159 fhandler_disk_file::open: 1 = fhandler_disk_file::open (z:\cygwin\etc\group, 0x20000)
 1050  281933 [main] mmap 159 _open: 4 = open (/etc/group, 0x20000)
 1079  283012 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (4)
 1054  284066 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio says yes
 5081  289147 [main] mmap 159 fhandler_disk_file::fstat_helper: 1 = GetFileInformationByHandle (z:\cygwin\etc\group, 112)
 1355  290502 [main] mmap 159 get_nt_attribute: file: z:\cygwin\etc\group
 1205  291707 [main] mmap 159 read_sd: file = z:\cygwin\etc\group
 7710  299417 [main] mmap 159 read_sd: file = z:\cygwin\etc\group: len=176
 1704  301121 [main] mmap 159 get_nt_attribute: file: z:\cygwin\etc\group 1E4, uid 2000, gid 2001
 1344  302465 [main] mmap 159 fhandler_disk_file::fstat_helper: 0 = fstat (, 0x22D380) st_atime=3C8E42DC st_size=277, st_mode=0x81E4, st_ino=325591779, sizeof=64
 1276  303741 [main] mmap 159 _fstat: 0 = fstat (4, 0x22D380)
 1365  305106 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (4)
 1699  306805 [main] mmap 159 _cygwin_istext_for_stdio:  _cifs: get_*_binary
 1282  308087 [main] mmap 159 setmode_helper: setmode: file was cle now raw
 1175  309262 [main] mmap 159 setmode: setmode (4</etc/group>, binary) returns text
 1232  310494 [main] mmap 159 _read: read (4, 0xA010F90, 1024) blocking, sigcatchers 0
 1264  311758 [main] mmap 159 _read: non-interruptible read
 2607  314365 [main] mmap 159 fhandler_base::read: returning 277 chars, binary mode
 1317  315682 [main] mmap 159 _read: 277 = read (4, 0xA010F90, 1024), errno 0
 1732  317414 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (4)
 1231  318645 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio says yes
 1087  319732 [main] mmap 159 setmode_helper: setmode: file was raw now cle
 1058  320790 [main] mmap 159 setmode: setmode (4</etc/group>, text) returns binary
21778  342568 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (4)
 1142  343710 [main] mmap 159 _cygwin_istext_for_stdio:  _cifs: get_*_binary
 1131  344841 [main] mmap 159 setmode_helper: setmode: file was cle now raw
 1450  346291 [main] mmap 159 setmode: setmode (4</etc/group>, binary) returns text
 1375  347666 [main] mmap 159 _read: read (4, 0xA010F90, 1024) blocking, sigcatchers 0
 1201  348867 [main] mmap 159 _read: non-interruptible read
 2313  351180 [main] mmap 159 _read: 0 = read (4, 0xA010F90, 1024), errno 0
 1359  352539 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (4)
 1180  353719 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio says yes
 1061  354780 [main] mmap 159 setmode_helper: setmode: file was raw now cle
 1430  356210 [main] mmap 159 setmode: setmode (4</etc/group>, text) returns binary
 2452  358662 [main] mmap 159 _close: close (4)
 1399  360061 [main] mmap 159 fhandler_base::close: closing '/etc/group' handle 0x70
 2605  362666 [main] mmap 159 _close: 0 = close (4)
 1544  364210 [main] mmap 159 normalize_posix_path: src /etc
 1152  365362 [main] mmap 159 normalize_posix_path: /etc = normalize_posix_path (/etc)
 1157  366519 [main] mmap 159 mount_info::conv_to_win32_path: conv_to_win32_path (/etc)
 1369  367888 [main] mmap 159 mount_info::conv_to_win32_path: src_path /etc, dst z:\cygwin\etc, flags 0xA, rc 0
 4415  372303 [main] mmap 159 symlink_info::check: not a symlink
 1330  373633 [main] mmap 159 symlink_info::check: 0 = symlink.check (z:\cygwin\etc, 0x22CFF0) (0xA)
 1155  374788 [main] mmap 159 path_conv::check: root_dir(z:\), this->path(z:\cygwin\etc), set_has_acls(8)
 4098  378886 [main] mmap 159 get_nt_attribute: file: z:\cygwin\etc\passwd 1C0, uid 2000, gid 2001
 1460  380346 [main] mmap 159 fhandler_disk_file::fstat_helper: 0 = fstat (, 0x22EF60) st_atime=3C8E42DC st_size=482, st_mode=0x81C0, st_ino=387896088, sizeof=64
 1231  381577 [main] mmap 159 _fstat: 0 = fstat (3, 0x22EF60)
 1164  382741 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (3)
 1140  383881 [main] mmap 159 _cygwin_istext_for_stdio:  _cifs: get_*_binary
 1123  385004 [main] mmap 159 setmode_helper: setmode: file was cle now raw
 1465  386469 [main] mmap 159 setmode: setmode (3</etc/passwd>, binary) returns text
 1217  387686 [main] mmap 159 _read: read (3, 0xA010F90, 1024) blocking, sigcatchers 0
 1170  388856 [main] mmap 159 _read: non-interruptible read
40291  429147 [main] mmap 159 fhandler_base::read: returning 482 chars, binary mode
 1694  430841 [main] mmap 159 _read: 482 = read (3, 0xA010F90, 1024), errno 0
 1063  431904 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (3)
 1276  433180 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio says yes
 1180  434360 [main] mmap 159 setmode_helper: setmode: file was raw now cle
 1684  436044 [main] mmap 159 setmode: setmode (3</etc/passwd>, text) returns binary
 8536  444580 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (3)
 1579  446159 [main] mmap 159 _cygwin_istext_for_stdio:  _cifs: get_*_binary
 1189  447348 [main] mmap 159 setmode_helper: setmode: file was cle now raw
 1141  448489 [main] mmap 159 setmode: setmode (3</etc/passwd>, binary) returns text
 1199  449688 [main] mmap 159 _read: read (3, 0xA010F90, 1024) blocking, sigcatchers 0
 1161  450849 [main] mmap 159 _read: non-interruptible read
 2266  453115 [main] mmap 159 _read: 0 = read (3, 0xA010F90, 1024), errno 0
 1342  454457 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio (3)
 1236  455693 [main] mmap 159 _cygwin_istext_for_stdio: _cygwin_istext_for_stdio says yes
 1498  457191 [main] mmap 159 setmode_helper: setmode: file was raw now cle
 1081  458272 [main] mmap 159 setmode: setmode (3</etc/passwd>, text) returns binary
 2352  460624 [main] mmap 159 _close: close (3)
 1221  461845 [main] mmap 159 fhandler_base::close: closing '/etc/passwd' handle 0x48
 2374  464219 [main] mmap 159 _close: 0 = close (3)
 4367  468586 [main] mmap 159 internal_getlogin: Cygwins Username: sweeks
 3149  471735 [main] mmap 159 sigproc_init: process/signal handling enabled(1001)
 5009  476744 [sig] mmap 159 wait_sig: sigcatch_nonmain 0x114, sigcatch_main 0x118
 1623  478367 [sig] mmap 159 wait_sig: Ready.  dwProcessid 159
124821  603188 [main] mmap 159 tty_list::allocate_tty: console 40076 already associated with tty0
 3055  606243 [main] mmap 159 build_argv: argv[0] = './mmap'
 1250  607493 [main] mmap 159 build_argv: argc 1
15982  623475 [main] mmap 159 normalize_posix_path: src /dev/piper
 1225  624700 [main] mmap 159 normalize_posix_path: /dev/piper = normalize_posix_path (/dev/piper)
 1123  625823 [main] mmap 159 mount_info::conv_to_win32_path: conv_to_win32_path (/dev/piper)
 1223  627046 [main] mmap 159 mount_info::conv_to_win32_path: src_path /dev/piper, dst \dev\piper, flags 0x2, rc 0
 1400  628446 [main] mmap 159 dtable::build_fhandler: fd 0, fh 0x615602C8
 1162  629608 [main] mmap 159 fhandler_base::init: created new fhandler_base for handle 0xF8
 1053  630661 [main] mmap 159 dtable::init_std_file_from_handle: fd 0, handle 0xF8
 2230  632891 [main] mmap 159 normalize_posix_path: src unknown disk file
 1711  634602 [main] mmap 159 mount_info::conv_to_posix_path: conv_to_posix_path (c:\, no-keep-rel, no-add-slash)
 1109  635711 [main] mmap 159 normalize_win32_path: c:\ = normalize_win32_path (c:\)
 1273  636984 [main] mmap 159 mount_info::conv_to_posix_path: /cygdrive/c = conv_to_posix_path (c:\)
 1394  638378 [main] mmap 159 cwdstuff::get: posix /cygdrive/c
 1161  639539 [main] mmap 159 cwdstuff::get: (/cygdrive/c) = cwdstuff::get (0x22F950, 260, 1, 0), errno 0
 1079  640618 [main] mmap 159 normalize_posix_path: /cygdrive/c/unknown disk file = normalize_posix_path (unknown disk file)
 1248  641866 [main] mmap 159 mount_info::conv_to_win32_path: conv_to_win32_path (/cygdrive/c/unknown disk file)
 1191  643057 [main] mmap 159 mount_info::cygdrive_win32_path: src '/cygdrive/c/unknown disk file', dst 'c:\unknown disk file'
 1361  644418 [main] mmap 159 mount_info::conv_to_win32_path: src_path /cygdrive/c/unknown disk file, dst c:\unknown disk file, flags 0x22, rc 0
 2421  646839 [main] mmap 159 symlink_info::check: GetFileAttributes (c:\unknown disk file) failed
 1342  648181 [main] mmap 159 geterrno_from_win_error: windows error 2 == errno 2
 1402  649583 [main] mmap 159 symlink_info::check: GetFileAttributes (c:\unknown disk file.lnk) failed
 1261  650844 [main] mmap 159 geterrno_from_win_error: windows error 2 == errno 2
 1191  652035 [main] mmap 159 symlink_info::check: 0 = symlink.check (c:\unknown disk file, 0x22F610) (0x22)
 1189  653224 [main] mmap 159 mount_info::conv_to_win32_path: conv_to_win32_path (/cygdrive/c)
 1530  654754 [main] mmap 159 mount_info::cygdrive_win32_path: src '/cygdrive/c', dst 'c:\'
 1495  656249 [main] mmap 159 mount_info::conv_to_win32_path: src_path /cygdrive/c, dst c:\, flags 0x22, rc 0
 1440  657689 [main] mmap 159 symlink_info::check: not a symlink
 1254  658943 [main] mmap 159 symlink_info::check: 0 = symlink.check (c:\, 0x22F610) (0x22)
 1192  660135 [main] mmap 159 path_conv::check: root_dir(c:\), this->path(c:\unknown disk file), set_has_acls(8)
 1211  661346 [main] mmap 159 dtable::build_fhandler: fd 1, fh 0x615603C0
 1205  662551 [main] mmap 159 fhandler_base::init: created new fhandler_base for handle 0x3C
 1186  663737 [main] mmap 159 dtable::init_std_file_from_handle: fd 1, handle 0x3C
 2155  665892 [main] mmap 159 normalize_posix_path: src unknown disk file
 1549  667441 [main] mmap 159 cwdstuff::get: posix /cygdrive/c
 1254  668695 [main] mmap 159 cwdstuff::get: (/cygdrive/c) = cwdstuff::get (0x22F940, 260, 1, 0), errno 0
 1191  669886 [main] mmap 159 normalize_posix_path: /cygdrive/c/unknown disk file = normalize_posix_path (unknown disk file)
 1186  671072 [main] mmap 159 mount_info::conv_to_win32_path: conv_to_win32_path (/cygdrive/c/unknown disk file)
 1180  672252 [main] mmap 159 mount_info::cygdrive_win32_path: src '/cygdrive/c/unknown disk file', dst 'c:\unknown disk file'
 1205  673457 [main] mmap 159 mount_info::conv_to_win32_path: src_path /cygdrive/c/unknown disk file, dst c:\unknown disk file, flags 0x22, rc 0
 1832  675289 [main] mmap 159 symlink_info::check: GetFileAttributes (c:\unknown disk file) failed
 2141  677430 [main] mmap 159 geterrno_from_win_error: windows error 2 == errno 2
 1476  678906 [main] mmap 159 symlink_info::check: GetFileAttributes (c:\unknown disk file.lnk) failed
 1255  680161 [main] mmap 159 geterrno_from_win_error: windows error 2 == errno 2
 1187  681348 [main] mmap 159 symlink_info::check: 0 = symlink.check (c:\unknown disk file, 0x22F600) (0x22)
 1256  682604 [main] mmap 159 mount_info::conv_to_win32_path: conv_to_win32_path (/cygdrive/c)
 1192  683796 [main] mmap 159 mount_info::cygdrive_win32_path: src '/cygdrive/c', dst 'c:\'
 1184  684980 [main] mmap 159 mount_info::conv_to_win32_path: src_path /cygdrive/c, dst c:\, flags 0x22, rc 0
 1821  686801 [main] mmap 159 symlink_info::check: not a symlink
 1248  688049 [main] mmap 159 symlink_info::check: 0 = symlink.check (c:\, 0x22F600) (0x22)
 1195  689244 [main] mmap 159 path_conv::check: root_dir(c:\), this->path(c:\unknown disk file), set_has_acls(8)
 1235  690479 [main] mmap 159 dtable::build_fhandler: fd 2, fh 0x615606E8
 1195  691674 [main] mmap 159 fhandler_base::init: created new fhandler_base for handle 0x54
 1436  693110 [main] mmap 159 dtable::init_std_file_from_handle: fd 2, handle 0x54
 1267  694377 [main] mmap 159 dll_list::init: here
 1193  695570 [main] mmap 159 dll_crt0_1: user_data->main 0x4011F0
 1919  697489 [main] mmap 159 sig_send: pid 159, signal -2, its_me 1
 1493  698982 [sig] mmap 159 wait_sig: awake
 1175  700157 [sig] mmap 159 wait_sig: processing signal -2
 1159  701316 [sig] mmap 159 wait_sig: set main thread completion event
 1130  702446 [sig] mmap 159 wait_sig: looping
 1148  703594 [main] mmap 159 sig_send: Waiting for thiscomplete 0x124
 1186  704780 [main] mmap 159 sig_send: returning 0 from sending signal -2
 2649  707429 [main] mmap 159 _write: write (2, 0x22F728, 142)
 1351  708780 [main] mmap 159 fhandler_base::write: binary write
TotalPhys: 209113088
AvailPhys: 166297600
TotalPageFile: 309587968
AvailPageFile: 274980864
TotalVirtual: 2147352576
AvailVirtual: 1589846016
 1360  710140 [main] mmap 159 fhandler_base::write: 142 = write (0x22F728, 142)
 1223  711363 [main] mmap 159 _write: 142 = write (2, 0x22F728, 142)
 1201  712564 [main] mmap 159 _write: write (2, 0x22F718, 38)
 1193  713757 [main] mmap 159 fhandler_base::write: binary write
attempting to mmap 100000000 bytes ... 1273  715030 [main] mmap 159 fhandler_base::write: 38 = write (0x22F718, 38)
 2401  717431 [main] mmap 159 _write: 38 = write (2, 0x22F718, 38)
 1668  719099 [main] mmap 159 mmap: addr 0, len 100000000, prot 3, flags 22, fd -1, off 0
 5487  724586 [main] mmap 159 fhandler_disk_file::mmap: 2A230000 = MapViewOfFileEx (h:188, access:1, 0, off:0, len:100007936, addr:0)
26042  750628 [main] mmap 159 mmap: 2A230000 = mmap() succeeded
 1466  752094 [main] mmap 159 _write: write (2, 0x22F718, 12)
 1212  753306 [main] mmap 159 fhandler_base::write: binary write
zeroing ...  1265  754571 [main] mmap 159 fhandler_base::write: 12 = write (0x22F718, 12)
 1156  755727 [main] mmap 159 _write: 12 = write (2, 0x22F718, 12)
1158576 1914303 [main] mmap 159 _write: write (2, 0x22F718, 14)
 7977 1922280 [main] mmap 159 fhandler_base::write: binary write
unmapping ...  2872 1925152 [main] mmap 159 fhandler_base::write: 14 = write (0x22F718, 14)
 1670 1926822 [main] mmap 159 _write: 14 = write (2, 0x22F718, 14)
 2030 1928852 [main] mmap 159 munmap: munmap (addr 2A230000, len 100000000)
133715 2062567 [main] mmap 159 munmap: 0 = munmap(): 2A230000
 2700 2065267 [main] mmap 159 _write: write (2, 0x22F718, 10)
 1485 2066752 [main] mmap 159 fhandler_base::write: binary write
succeeded
 2138 2068890 [main] mmap 159 fhandler_base::write: 10 = write (0x22F718, 10)
 1509 2070399 [main] mmap 159 _write: 10 = write (2, 0x22F718, 10)
 1459 2071858 [main] mmap 159 _write: write (2, 0x22F718, 38)
 1266 2073124 [main] mmap 159 fhandler_base::write: binary write
attempting to mmap 130000000 bytes ... 1249 2074373 [main] mmap 159 fhandler_base::write: 38 = write (0x22F718, 38)
 1316 2075689 [main] mmap 159 _write: 38 = write (2, 0x22F718, 38)
 1302 2076991 [main] mmap 159 mmap: addr 0, len 130000000, prot 3, flags 22, fd -1, off 0
 2949 2079940 [main] mmap 159 fhandler_disk_file::mmap: 2A230000 = MapViewOfFileEx (h:190, access:1, 0, off:0, len:130023424, addr:0)
 7425 2087365 [main] mmap 159 mmap_record::map_map: -1 = map_map (): Win32 error 1455
 1830 2089195 [main] mmap 159 mmap: 2A230000 = mmap() succeeded
 1209 2090404 [main] mmap 159 _write: write (2, 0x22F718, 12)
 1343 2091747 [main] mmap 159 fhandler_base::write: binary write
zeroing ...  1266 2093013 [main] mmap 159 fhandler_base::write: 12 = write (0x22F718, 12)
 1159 2094172 [main] mmap 159 _write: 12 = write (2, 0x22F718, 12)
 2744 2096916 [main] mmap 159 handle_exceptions: In cygwin_except_handler exc 0xC0000005 at 0x6108BEDF sp 0x22FE20
 1585 2098501 [main] mmap 159 handle_exceptions: In cygwin_except_handler sig = 11 at 0x6108BEDF
 1210 2099711 [main] mmap 159 handle_exceptions: In cygwin_except_handler calling 0x0
2100862 [main] mmap 159 handle_exceptions: Exception: STATUS_ACCESS_VIOLATION
 1151 2100862 [main] mmap 159 handle_exceptions: Exception: STATUS_ACCESS_VIOLATION
24822 2125684 [main] mmap 159 try_to_debug: debugger_command ''
2137557 [main] mmap 159 open_stackdumpfile: Dumping stack trace to mmap.exe.stackdump
11873 2137557 [main] mmap 159 open_stackdumpfile: Dumping stack trace to mmap.exe.stackdump
202590 2340147 [main] mmap 159 signal_exit: about to call do_exit (18B00)
 1278 2341425 [main] mmap 159 do_exit: do_exit (101120)
 1556 2342981 [main] mmap 159 void: 0x0 = signal (20, 0x1)
 1278 2344259 [main] mmap 159 void: 0x0 = signal (1, 0x1)
 1218 2345477 [main] mmap 159 void: 0x0 = signal (2, 0x1)
 1216 2346693 [main] mmap 159 void: 0x0 = signal (3, 0x1)
 1330 2348023 [main] mmap 159 fhandler_base::close: closing '/dev/piper' handle 0xF8
 2138 2350161 [main] mmap 159 fhandler_base::close: closing 'unknown disk file' handle 0x3C
 1595 2351756 [main] mmap 159 fhandler_base::close: closing 'unknown disk file' handle 0x54
 1658 2353414 [main] mmap 159 proc_terminate: nchildren 0, nzombies 0
 1282 2354696 [main] mmap 159 proc_terminate: leaving
 1211 2355907 [main] mmap 159 sigproc_terminate: entering
 1215 2357122 [main] mmap 159 sigproc_terminate: done
 1861 2358983 [main] mmap 159 do_exit: 159 == sid 159, send SIGHUP to children
 3114 2362097 [main] mmap 159 __to_clock_t: dwHighDateTime 0, dwLowDateTime 11917136
 1443 2363540 [main] mmap 159 __to_clock_t: total 00000000 000004A7
 1240 2364780 [main] mmap 159 __to_clock_t: dwHighDateTime 0, dwLowDateTime 7510800
 1222 2366002 [main] mmap 159 __to_clock_t: total 00000000 000002EF
71773 2437775 [main] mmap 159 _pinfo::exit: Calling ExitProcess 101120

--
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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: mmap of large amount returns invalid pointer
  2002-03-11 21:08 Stephen Weeks
@ 2002-03-12  2:23 ` Corinna Vinschen
  2002-03-12 11:17   ` Stephen Weeks
  0 siblings, 1 reply; 14+ messages in thread
From: Corinna Vinschen @ 2002-03-12  2:23 UTC (permalink / raw)
  To: cygwin

On Mon, Mar 11, 2002 at 08:38:34PM -0800, Stephen Weeks wrote:
> 
> I am experience a problem where mmap does not return -1, but the
> pointer returned is not to a valid chunk of memory.  I have included a
> sample program, the output that I see, and the output of cygcheck
> below.
> 
> I have tried this program both with and withouth the registry setting
> 	HKEY_CURRENT_USER\Software\Cygnus Solutions\Cygwin\heap_chunk_in_mb
> which, when set, I have set to 512Mb.  BTW, I notice that this
> registry value isn't checked for by cygcheck.  That would seem
> useful.
> 
> Even if I got the registry setting wrong, I would expect mmap to
> return -1 if it is unable to get the space.

This registry setting has absolutely no effect on mmap().  It affects
the application heap but the mmap memory is taken from the shared memory
area of the system which isn't controlled by Cygwin but only by Win32
itself.

I ran your below test application with slightly different values in
the `try' calls to reflect the size of the page file in my box.

However, before talking further about this I'd like you to run your
below test application again but this time under strace.  Could
you please send the strace output to this list (it's not that long)?

Thanks in advance,
Corinna

> --------------------------------------------------------------------------------
> 
> #include <stdio.h>
> #include <sys/mman.h>
> #include <unistd.h>
> #include <windows.h>
> 
> void try (uint length) {
> 	void *p;
> 
> 	fprintf(stderr, "attempting to mmap %u bytes ...", length);
> 	p = mmap (NULL, length, 
> 			PROT_READ | PROT_WRITE, 
> 			MAP_PRIVATE | MAP_ANON, -1, 0);
> 	if ((void*)-1 == p) {
> 		fprintf(stderr, " out of memory\n");
> 		exit(0);
> 	}
> 	fprintf(stderr, "zeroing ... ");
> 	memset(p, 0, length);
> 	fprintf(stderr, "unmapping ... ");
> 	munmap(p, length);
> 	fprintf(stderr, "succeeded\n");
> 	length *= 2;
> }
> 
> int main (int argc, char **argv) {
> 	MEMORYSTATUS ms; 
> 
> 	ms.dwLength = sizeof(MEMORYSTATUS); 
> 	GlobalMemoryStatus(&ms); 
> 	fprintf(stderr, "TotalPhys: %ld\nAvailPhys: %ld\nTotalPageFile: %ld\nAvailPageFile: %ld\nTotalVirtual: %ld\nAvailVirtual: %ld\n",
> 			 ms.dwTotalPhys, 
> 			 ms.dwAvailPhys, 
> 			 ms.dwTotalPageFile, 
> 			 ms.dwAvailPageFile, 
> 			 ms.dwTotalVirtual, 
> 			 ms.dwAvailVirtual); 
> 	try(100000000);
> 	try(130000000);
> 	exit(0);
> }
> 
> --------------------------------------------------------------------------------
> 
> TotalPhys: 209113088
> AvailPhys: 166580224
> TotalPageFile: 309587968
> AvailPageFile: 275365888
> TotalVirtual: 2147352576
> AvailVirtual: 1589841920
> attempting to mmap 100000000 bytes ...zeroing ... unmapping ... succeeded
> attempting to mmap 130000000 bytes ...zeroing ... Segmentation fault (core dumped)
> 
> --------------------------------------------------------------------------------
> 
> Cygwin Win95/NT Configuration Diagnostics
> Current System Time: Mon Mar 11 19:42:08 2002
> 
> Windows NT Ver 4.0 Build 1381 Service Pack 6
> 
> Path:	z:\cygwin\home\sweeks\bin
> 	z:\cygwin\sbin
> 	z:\cygwin\usr\sbin
> 	z:\cygwin\usr\local\bin
> 	z:\cygwin\bin
> 	z:\cygwin\bin
> 	c:\WINNT\system32
> 	c:\WINNT
> 
> SysDir: C:\WINNT\System32
> WinDir: C:\WINNT
> 
> CYGWIN = `binmode ntsec tty '
> HOME = `z:\cygwin\home\sweeks'
> MAKE_MODE = `unix'
> PWD = `/cygdrive/c'
> USER = `sweeks'
> 
> COMPUTERNAME = `WINDOZE'
> COMSPEC = `C:\WINNT\system32\cmd.exe'
> HOMEDRIVE = `C:'
> HOMEPATH = `\'
> LOGONSERVER = `\\WINDOZE'
> MANPATH = `:/usr/ssl/man'
> NUMBER_OF_PROCESSORS = `1'
> OLDPWD = `/home/sweeks'
> OS2LIBPATH = `C:\WINNT\system32\os2\dll;'
> OS = `Windows_NT'
> PATHEXT = `.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH'
> PROCESSOR_ARCHITECTURE = `x86'
> PROCESSOR_IDENTIFIER = `x86 Family 15 Model 1 Stepping 2, GenuineIntel'
> PROCESSOR_LEVEL = `15'
> PROCESSOR_REVISION = `0102'
> PROMPT = `$P$G'
> PS1 = `\W% '
> SHLVL = `1'
> SYSTEMDRIVE = `C:'
> SYSTEMROOT = `C:\WINNT'
> TEMP = `c:\TEMP'
> TERM = `cygwin'
> TMP = `c:\TEMP'
> USERDOMAIN = `WINDOZE'
> USERNAME = `sweeks'
> USERPROFILE = `C:\WINNT\Profiles\sweeks'
> WINDIR = `C:\WINNT'
> _ = `/usr/bin/cygcheck'
> 
> HKEY_CURRENT_USER\Software\Cygnus Solutions
> HKEY_CURRENT_USER\Software\Cygnus Solutions\Cygwin
>   (default) = 0x00000200
> HKEY_CURRENT_USER\Software\Cygnus Solutions\Cygwin\mounts v2
>   (default) = `/cygdrive'
>   cygdrive flags = 0x00000022
> HKEY_CURRENT_USER\Software\Cygnus Solutions\Cygwin\Program Options
> HKEY_CURRENT_USER\Software\Cygnus Solutions\CYGWIN.DLL setup
> HKEY_CURRENT_USER\Software\Cygnus Solutions\CYGWIN.DLL setup\b15.0
> HKEY_CURRENT_USER\Software\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts
> HKEY_CURRENT_USER\Software\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\00
>   (default) = `C:'
>   unix = `/'
>   fbinary = 0x00000000
>   fsilent = 0x00000000
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/
>   (default) = `z:\cygwin'
>   flags = 0x0000000a
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/usr/bin
>   (default) = `z:/cygwin/bin'
>   flags = 0x0000000a
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/usr/lib
>   (default) = `z:/cygwin/lib'
>   flags = 0x0000000a
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\Program Options
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin B20
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin B20\B20.1
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\00
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\01
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\02
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\03
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\04
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\05
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\06
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\07
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\08
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\09
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\0A
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\0B
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\0C
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\0D
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\0E
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\0F
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\10
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\11
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\12
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\13
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\14
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\15
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\16
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\17
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\18
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\19
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\1A
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\1B
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\1C
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\1D
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\GNUPro
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\GNUPro\i586-cygwin32
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\GNUPro\i586-cygwin32\i586-cygwin32
> HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\GNUPro\i586-cygwin32\i586-cygwin32\cygwin-B20.1
>   (default) = `z:\cygwin-b20.1\cygwin-b20'
> HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Cygnus Cygwin B20
>   (default) = `C:\WINNT\IsUninst.exe -fz:\cygwin-b20.1\cygwin-b20\Uninst.isu'
>   DisplayName = `Cygwin B20'
> 
> a:  fd           N/A    N/A                    
> c:  hd  NTFS    2043Mb  17% CP CS UN PA FC     
> d:  cd           N/A    N/A                    
> y:  net NTFS   71228Mb  19%          PA        sweeks
> z:  net NTFS   71228Mb  19%          PA        windows
> 
> .              /cygdrive  user    binmode,noumount
> z:\cygwin      /          system  binmode
> z:/cygwin/bin  /usr/bin   system  binmode
> z:/cygwin/lib  /usr/lib   system  binmode
> 
> Found: z:\cygwin\bin\bash.exe
> Found: z:\cygwin\bin\cat.exe
> Not Found: cpp (good!)
> Found: z:\cygwin\bin\find.exe
> Not Found: gcc
> Not Found: gdb
> Not Found: ld
> Found: z:\cygwin\bin\ls.exe
> Not Found: make
> Found: z:\cygwin\bin\sh.exe
> 
>   751k 2002/03/09 z:\cygwin\usr\sbin\cygwin1.dll - os=4.0 img=1.0 sys=4.0
>                   "cygwin1.dll" v0.0 ts=2002/2/25 8:14
>     Cygwin DLL version info:
>         DLL version: 1.3.10
>         DLL epoch: 19
>         DLL bad signal mask: 19005
>         DLL old termios: 5
>         DLL malloc env: 28
>         API major: 0
>         API minor: 51
>         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: Mon Feb 25 11:14:34 EST 2002
>         Shared id: cygwin1S3
> 
>    19k 2002/02/21 z:\cygwin\bin\cyggdbm.dll - os=4.0 img=1.0 sys=4.0
>                   "cyggdbm.dll" v0.0 ts=2002/2/19 19:05
>    45k 2002/02/21 z:\cygwin\bin\cygform5.dll - os=4.0 img=1.0 sys=4.0
>                   "cygform5.dll" v0.0 ts=2001/4/24 22:28
>    26k 2002/02/21 z:\cygwin\bin\cygmenu5.dll - os=4.0 img=1.0 sys=4.0
>                   "cygmenu5.dll" v0.0 ts=2001/4/24 22:27
>   156k 2002/02/21 z:\cygwin\bin\cygncurses++5.dll - os=4.0 img=1.0 sys=4.0
>                   "cygncurses++5.dll" v0.0 ts=2001/4/24 22:29
>   226k 2002/02/21 z:\cygwin\bin\cygncurses5.dll - os=4.0 img=1.0 sys=4.0
>                   "cygncurses5.dll" v0.0 ts=2001/4/24 22:17
>    15k 2002/02/21 z:\cygwin\bin\cygpanel5.dll - os=4.0 img=1.0 sys=4.0
>                   "cygpanel5.dll" v0.0 ts=2001/4/24 22:27
>    35k 2002/02/21 z:\cygwin\bin\cygform6.dll - os=4.0 img=1.0 sys=4.0
>                   "cygform6.dll" v0.0 ts=2002/1/8 22:03
>    20k 2002/02/21 z:\cygwin\bin\cygmenu6.dll - os=4.0 img=1.0 sys=4.0
>                   "cygmenu6.dll" v0.0 ts=2002/1/8 22:03
>   175k 2002/02/21 z:\cygwin\bin\cygncurses++6.dll - os=4.0 img=1.0 sys=4.0
>                   "cygncurses++6.dll" v0.0 ts=2002/1/8 22:03
>   202k 2002/02/21 z:\cygwin\bin\cygncurses6.dll - os=4.0 img=1.0 sys=4.0
>                   "cygncurses6.dll" v0.0 ts=2002/1/8 22:03
>    12k 2002/02/21 z:\cygwin\bin\cygpanel6.dll - os=4.0 img=1.0 sys=4.0
>                   "cygpanel6.dll" v0.0 ts=2002/1/8 22:03
>    17k 2002/02/21 z:\cygwin\bin\cyghistory4.dll - os=4.0 img=1.0 sys=4.0
>                   "cyghistory4.dll" v0.0 ts=2001/1/6 20:34
>   108k 2002/02/21 z:\cygwin\bin\cygreadline4.dll - os=4.0 img=1.0 sys=4.0
>                   "cygreadline4.dll" v0.0 ts=2001/1/6 20:34
>    20k 2002/02/21 z:\cygwin\bin\cyghistory5.dll - os=4.0 img=1.0 sys=4.0
>                   "cyghistory5.dll" v0.0 ts=2002/1/12 17:27
>   121k 2002/02/21 z:\cygwin\bin\cygreadline5.dll - os=4.0 img=1.0 sys=4.0
>                   "cygreadline5.dll" v0.0 ts=2002/1/12 17:27
>    50k 2002/02/21 z:\cygwin\bin\cygz.dll - os=4.0 img=1.0 sys=4.0
>                   "cygz.dll" v0.0 ts=2002/1/20 11:41
>    21k 2002/02/21 z:\cygwin\bin\cygintl.dll - os=4.0 img=1.0 sys=4.0
>                   "cygintl.dll" v0.0 ts=2001/6/20 10:09
>    22k 2002/03/08 z:\cygwin\bin\cygintl-1.dll - os=4.0 img=1.0 sys=4.0
>                   "cygintl-1.dll" v0.0 ts=2001/12/13 1:28
>    40k 2002/03/08 z:\cygwin\bin\cygpcre.dll - os=4.0 img=1.0 sys=4.0
>                   "cygpcre.dll" v0.0 ts=2001/11/21 14:15
>    39k 2002/03/08 z:\cygwin\bin\cygpcreposix.dll - os=4.0 img=1.0 sys=4.0
>                   "cygpcreposix.dll" v0.0 ts=2001/11/21 14:15
>   621k 2002/03/09 z:\cygwin\bin\cygcrypto.dll - os=4.0 img=1.0 sys=4.0
>                   "cygcrypto.dll" v0.0 ts=2002/1/16 1:54
>   156k 2002/03/09 z:\cygwin\bin\cygssl.dll - os=4.0 img=1.0 sys=4.0
>                   "cygssl.dll" v0.0 ts=2002/1/16 1:54
>   751k 2002/03/09 z:\cygwin\bin\cygwin1.dll - os=4.0 img=1.0 sys=4.0
>                   "cygwin1.dll" v0.0 ts=2002/2/25 8:14
>     Cygwin DLL version info:
>         DLL version: 1.3.10
>         DLL epoch: 19
>         DLL bad signal mask: 19005
>         DLL old termios: 5
>         DLL malloc env: 28
>         API major: 0
>         API minor: 51
>         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: Mon Feb 25 11:14:34 EST 2002
>         Shared id: cygwin1S3
> 
> 
> Cygwin Package Information
> Last downloaded files to: Z:\cygwin-packages
> Last downloaded files from: http://planetmirror.com/pub/sourceware/cygwin
> 
> Package             Version             
> ash                 20020131-1          
> bash                2.05a-3             
> cygrunsrv           0.95-1              
> cygwin              1.3.10-1            
> cygwin-src          1.3.10-1            
> diff                0.0                 
> fileutils           4.1-1               
> findutils           4.1                 
> gawk                3.0.4-1             
> gdbm                1.8.0-4             
> grep                2.5g                
> groff               1.17.2-1            
> gzip                1.3.2-1             
> inetutils           1.3.2-17            
> less                358-3               
> libintl             0.10.38-3           
> libintl1            0.10.40-1           
> libncurses5         5.2-1               
> libncurses6         5.2-8               
> libreadline4        4.1-2               
> libreadline5        4.2a-1              
> login               1.4-3               
> man                 1.5g-2              
> ncurses             5.2-8               
> openssh             3.1p1-1             
> openssl             0.9.6c-3            
> pcre                3.7-1               
> readline            4.2a-1              
> sed                 3.02-1              
> sh-utils            2.0-2               
> tar                 1.13.19-1           
> termcap             20010825-1          
> terminfo            5.2-1               
> textutils           2.0.21-1            
> w32api              1.2-1               
> which               1.5-1               
> zlib                1.1.3-7             
> 
> Use -h to see help about each section
> 
> --
> 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/

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Developer                                mailto:cygwin@cygwin.com
Red Hat, Inc.

--
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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

* mmap of large amount returns invalid pointer
@ 2002-03-11 21:08 Stephen Weeks
  2002-03-12  2:23 ` Corinna Vinschen
  0 siblings, 1 reply; 14+ messages in thread
From: Stephen Weeks @ 2002-03-11 21:08 UTC (permalink / raw)
  To: cygwin


I am experience a problem where mmap does not return -1, but the
pointer returned is not to a valid chunk of memory.  I have included a
sample program, the output that I see, and the output of cygcheck
below.

I have tried this program both with and withouth the registry setting
	HKEY_CURRENT_USER\Software\Cygnus Solutions\Cygwin\heap_chunk_in_mb
which, when set, I have set to 512Mb.  BTW, I notice that this
registry value isn't checked for by cygcheck.  That would seem
useful.

Even if I got the registry setting wrong, I would expect mmap to
return -1 if it is unable to get the space.

Thanks for your help.

--------------------------------------------------------------------------------

#include <stdio.h>
#include <sys/mman.h>
#include <unistd.h>
#include <windows.h>

void try (uint length) {
	void *p;

	fprintf(stderr, "attempting to mmap %u bytes ...", length);
	p = mmap (NULL, length, 
			PROT_READ | PROT_WRITE, 
			MAP_PRIVATE | MAP_ANON, -1, 0);
	if ((void*)-1 == p) {
		fprintf(stderr, " out of memory\n");
		exit(0);
	}
	fprintf(stderr, "zeroing ... ");
	memset(p, 0, length);
	fprintf(stderr, "unmapping ... ");
	munmap(p, length);
	fprintf(stderr, "succeeded\n");
	length *= 2;
}

int main (int argc, char **argv) {
	MEMORYSTATUS ms; 

	ms.dwLength = sizeof(MEMORYSTATUS); 
	GlobalMemoryStatus(&ms); 
	fprintf(stderr, "TotalPhys: %ld\nAvailPhys: %ld\nTotalPageFile: %ld\nAvailPageFile: %ld\nTotalVirtual: %ld\nAvailVirtual: %ld\n",
			 ms.dwTotalPhys, 
			 ms.dwAvailPhys, 
			 ms.dwTotalPageFile, 
			 ms.dwAvailPageFile, 
			 ms.dwTotalVirtual, 
			 ms.dwAvailVirtual); 
	try(100000000);
	try(130000000);
	exit(0);
}

--------------------------------------------------------------------------------

TotalPhys: 209113088
AvailPhys: 166580224
TotalPageFile: 309587968
AvailPageFile: 275365888
TotalVirtual: 2147352576
AvailVirtual: 1589841920
attempting to mmap 100000000 bytes ...zeroing ... unmapping ... succeeded
attempting to mmap 130000000 bytes ...zeroing ... Segmentation fault (core dumped)

--------------------------------------------------------------------------------

Cygwin Win95/NT Configuration Diagnostics
Current System Time: Mon Mar 11 19:42:08 2002

Windows NT Ver 4.0 Build 1381 Service Pack 6

Path:	z:\cygwin\home\sweeks\bin
	z:\cygwin\sbin
	z:\cygwin\usr\sbin
	z:\cygwin\usr\local\bin
	z:\cygwin\bin
	z:\cygwin\bin
	c:\WINNT\system32
	c:\WINNT

SysDir: C:\WINNT\System32
WinDir: C:\WINNT

CYGWIN = `binmode ntsec tty '
HOME = `z:\cygwin\home\sweeks'
MAKE_MODE = `unix'
PWD = `/cygdrive/c'
USER = `sweeks'

COMPUTERNAME = `WINDOZE'
COMSPEC = `C:\WINNT\system32\cmd.exe'
HOMEDRIVE = `C:'
HOMEPATH = `\'
LOGONSERVER = `\\WINDOZE'
MANPATH = `:/usr/ssl/man'
NUMBER_OF_PROCESSORS = `1'
OLDPWD = `/home/sweeks'
OS2LIBPATH = `C:\WINNT\system32\os2\dll;'
OS = `Windows_NT'
PATHEXT = `.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH'
PROCESSOR_ARCHITECTURE = `x86'
PROCESSOR_IDENTIFIER = `x86 Family 15 Model 1 Stepping 2, GenuineIntel'
PROCESSOR_LEVEL = `15'
PROCESSOR_REVISION = `0102'
PROMPT = `$P$G'
PS1 = `\W% '
SHLVL = `1'
SYSTEMDRIVE = `C:'
SYSTEMROOT = `C:\WINNT'
TEMP = `c:\TEMP'
TERM = `cygwin'
TMP = `c:\TEMP'
USERDOMAIN = `WINDOZE'
USERNAME = `sweeks'
USERPROFILE = `C:\WINNT\Profiles\sweeks'
WINDIR = `C:\WINNT'
_ = `/usr/bin/cygcheck'

HKEY_CURRENT_USER\Software\Cygnus Solutions
HKEY_CURRENT_USER\Software\Cygnus Solutions\Cygwin
  (default) = 0x00000200
HKEY_CURRENT_USER\Software\Cygnus Solutions\Cygwin\mounts v2
  (default) = `/cygdrive'
  cygdrive flags = 0x00000022
HKEY_CURRENT_USER\Software\Cygnus Solutions\Cygwin\Program Options
HKEY_CURRENT_USER\Software\Cygnus Solutions\CYGWIN.DLL setup
HKEY_CURRENT_USER\Software\Cygnus Solutions\CYGWIN.DLL setup\b15.0
HKEY_CURRENT_USER\Software\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts
HKEY_CURRENT_USER\Software\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\00
  (default) = `C:'
  unix = `/'
  fbinary = 0x00000000
  fsilent = 0x00000000
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/
  (default) = `z:\cygwin'
  flags = 0x0000000a
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/usr/bin
  (default) = `z:/cygwin/bin'
  flags = 0x0000000a
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/usr/lib
  (default) = `z:/cygwin/lib'
  flags = 0x0000000a
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\Program Options
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin B20
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin B20\B20.1
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\00
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\01
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\02
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\03
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\04
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\05
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\06
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\07
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\08
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\09
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\0A
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\0B
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\0C
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\0D
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\0E
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\0F
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\10
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\11
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\12
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\13
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\14
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\15
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\16
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\17
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\18
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\19
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\1A
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\1B
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\1C
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\CYGWIN.DLL setup\b15.0\mounts\1D
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\GNUPro
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\GNUPro\i586-cygwin32
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\GNUPro\i586-cygwin32\i586-cygwin32
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\GNUPro\i586-cygwin32\i586-cygwin32\cygwin-B20.1
  (default) = `z:\cygwin-b20.1\cygwin-b20'
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Cygnus Cygwin B20
  (default) = `C:\WINNT\IsUninst.exe -fz:\cygwin-b20.1\cygwin-b20\Uninst.isu'
  DisplayName = `Cygwin B20'

a:  fd           N/A    N/A                    
c:  hd  NTFS    2043Mb  17% CP CS UN PA FC     
d:  cd           N/A    N/A                    
y:  net NTFS   71228Mb  19%          PA        sweeks
z:  net NTFS   71228Mb  19%          PA        windows

.              /cygdrive  user    binmode,noumount
z:\cygwin      /          system  binmode
z:/cygwin/bin  /usr/bin   system  binmode
z:/cygwin/lib  /usr/lib   system  binmode

Found: z:\cygwin\bin\bash.exe
Found: z:\cygwin\bin\cat.exe
Not Found: cpp (good!)
Found: z:\cygwin\bin\find.exe
Not Found: gcc
Not Found: gdb
Not Found: ld
Found: z:\cygwin\bin\ls.exe
Not Found: make
Found: z:\cygwin\bin\sh.exe

  751k 2002/03/09 z:\cygwin\usr\sbin\cygwin1.dll - os=4.0 img=1.0 sys=4.0
                  "cygwin1.dll" v0.0 ts=2002/2/25 8:14
    Cygwin DLL version info:
        DLL version: 1.3.10
        DLL epoch: 19
        DLL bad signal mask: 19005
        DLL old termios: 5
        DLL malloc env: 28
        API major: 0
        API minor: 51
        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: Mon Feb 25 11:14:34 EST 2002
        Shared id: cygwin1S3

   19k 2002/02/21 z:\cygwin\bin\cyggdbm.dll - os=4.0 img=1.0 sys=4.0
                  "cyggdbm.dll" v0.0 ts=2002/2/19 19:05
   45k 2002/02/21 z:\cygwin\bin\cygform5.dll - os=4.0 img=1.0 sys=4.0
                  "cygform5.dll" v0.0 ts=2001/4/24 22:28
   26k 2002/02/21 z:\cygwin\bin\cygmenu5.dll - os=4.0 img=1.0 sys=4.0
                  "cygmenu5.dll" v0.0 ts=2001/4/24 22:27
  156k 2002/02/21 z:\cygwin\bin\cygncurses++5.dll - os=4.0 img=1.0 sys=4.0
                  "cygncurses++5.dll" v0.0 ts=2001/4/24 22:29
  226k 2002/02/21 z:\cygwin\bin\cygncurses5.dll - os=4.0 img=1.0 sys=4.0
                  "cygncurses5.dll" v0.0 ts=2001/4/24 22:17
   15k 2002/02/21 z:\cygwin\bin\cygpanel5.dll - os=4.0 img=1.0 sys=4.0
                  "cygpanel5.dll" v0.0 ts=2001/4/24 22:27
   35k 2002/02/21 z:\cygwin\bin\cygform6.dll - os=4.0 img=1.0 sys=4.0
                  "cygform6.dll" v0.0 ts=2002/1/8 22:03
   20k 2002/02/21 z:\cygwin\bin\cygmenu6.dll - os=4.0 img=1.0 sys=4.0
                  "cygmenu6.dll" v0.0 ts=2002/1/8 22:03
  175k 2002/02/21 z:\cygwin\bin\cygncurses++6.dll - os=4.0 img=1.0 sys=4.0
                  "cygncurses++6.dll" v0.0 ts=2002/1/8 22:03
  202k 2002/02/21 z:\cygwin\bin\cygncurses6.dll - os=4.0 img=1.0 sys=4.0
                  "cygncurses6.dll" v0.0 ts=2002/1/8 22:03
   12k 2002/02/21 z:\cygwin\bin\cygpanel6.dll - os=4.0 img=1.0 sys=4.0
                  "cygpanel6.dll" v0.0 ts=2002/1/8 22:03
   17k 2002/02/21 z:\cygwin\bin\cyghistory4.dll - os=4.0 img=1.0 sys=4.0
                  "cyghistory4.dll" v0.0 ts=2001/1/6 20:34
  108k 2002/02/21 z:\cygwin\bin\cygreadline4.dll - os=4.0 img=1.0 sys=4.0
                  "cygreadline4.dll" v0.0 ts=2001/1/6 20:34
   20k 2002/02/21 z:\cygwin\bin\cyghistory5.dll - os=4.0 img=1.0 sys=4.0
                  "cyghistory5.dll" v0.0 ts=2002/1/12 17:27
  121k 2002/02/21 z:\cygwin\bin\cygreadline5.dll - os=4.0 img=1.0 sys=4.0
                  "cygreadline5.dll" v0.0 ts=2002/1/12 17:27
   50k 2002/02/21 z:\cygwin\bin\cygz.dll - os=4.0 img=1.0 sys=4.0
                  "cygz.dll" v0.0 ts=2002/1/20 11:41
   21k 2002/02/21 z:\cygwin\bin\cygintl.dll - os=4.0 img=1.0 sys=4.0
                  "cygintl.dll" v0.0 ts=2001/6/20 10:09
   22k 2002/03/08 z:\cygwin\bin\cygintl-1.dll - os=4.0 img=1.0 sys=4.0
                  "cygintl-1.dll" v0.0 ts=2001/12/13 1:28
   40k 2002/03/08 z:\cygwin\bin\cygpcre.dll - os=4.0 img=1.0 sys=4.0
                  "cygpcre.dll" v0.0 ts=2001/11/21 14:15
   39k 2002/03/08 z:\cygwin\bin\cygpcreposix.dll - os=4.0 img=1.0 sys=4.0
                  "cygpcreposix.dll" v0.0 ts=2001/11/21 14:15
  621k 2002/03/09 z:\cygwin\bin\cygcrypto.dll - os=4.0 img=1.0 sys=4.0
                  "cygcrypto.dll" v0.0 ts=2002/1/16 1:54
  156k 2002/03/09 z:\cygwin\bin\cygssl.dll - os=4.0 img=1.0 sys=4.0
                  "cygssl.dll" v0.0 ts=2002/1/16 1:54
  751k 2002/03/09 z:\cygwin\bin\cygwin1.dll - os=4.0 img=1.0 sys=4.0
                  "cygwin1.dll" v0.0 ts=2002/2/25 8:14
    Cygwin DLL version info:
        DLL version: 1.3.10
        DLL epoch: 19
        DLL bad signal mask: 19005
        DLL old termios: 5
        DLL malloc env: 28
        API major: 0
        API minor: 51
        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: Mon Feb 25 11:14:34 EST 2002
        Shared id: cygwin1S3


Cygwin Package Information
Last downloaded files to: Z:\cygwin-packages
Last downloaded files from: http://planetmirror.com/pub/sourceware/cygwin

Package             Version             
ash                 20020131-1          
bash                2.05a-3             
cygrunsrv           0.95-1              
cygwin              1.3.10-1            
cygwin-src          1.3.10-1            
diff                0.0                 
fileutils           4.1-1               
findutils           4.1                 
gawk                3.0.4-1             
gdbm                1.8.0-4             
grep                2.5g                
groff               1.17.2-1            
gzip                1.3.2-1             
inetutils           1.3.2-17            
less                358-3               
libintl             0.10.38-3           
libintl1            0.10.40-1           
libncurses5         5.2-1               
libncurses6         5.2-8               
libreadline4        4.1-2               
libreadline5        4.2a-1              
login               1.4-3               
man                 1.5g-2              
ncurses             5.2-8               
openssh             3.1p1-1             
openssl             0.9.6c-3            
pcre                3.7-1               
readline            4.2a-1              
sed                 3.02-1              
sh-utils            2.0-2               
tar                 1.13.19-1           
termcap             20010825-1          
terminfo            5.2-1               
textutils           2.0.21-1            
w32api              1.2-1               
which               1.5-1               
zlib                1.1.3-7             

Use -h to see help about each section

--
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/

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2002-04-09 16:34 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-03-12 14:53 mmap of large amount returns invalid pointer Heribert Dahms
2002-03-12 18:48 ` Stephen Weeks
2002-03-12 18:48   ` Christopher Faylor
2002-03-13  2:23 ` Corinna Vinschen
2002-03-13 14:25   ` Stephen Weeks
2002-03-14  4:30     ` Corinna Vinschen
2002-03-17 11:37       ` Stephen Weeks
2002-03-19  3:43         ` Corinna Vinschen
2002-03-21 11:28           ` Stephen Weeks
2002-04-09  9:35             ` Corinna Vinschen
  -- strict thread matches above, loose matches on Subject: below --
2002-03-11 21:08 Stephen Weeks
2002-03-12  2:23 ` Corinna Vinschen
2002-03-12 11:17   ` Stephen Weeks
2002-03-12 12:44     ` Corinna Vinschen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).