This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: mmap of large amount returns invalid pointer



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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]