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


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

Re: reproducible cygwin memory problems


On Aug 13 11:23, Reini Urban wrote:
> Corinna Vinschen schrieb:
> ...
> >Ok, back to mmap/munmap.  Private anonymous mappings are implemented in
> >Cygwin by calling VirtualAlloc/VirtualFree.  However, due to
> >restrictions in the Win32 API, VirtualFree is only called by munmap, as
> >soon as *all* pages within a single mmap'ed area are free'ed by this or
> >preceding calls to munmap.
> >
> >In other words, the mmap'ed memory will not be returned to the OS, if
> >not the complete mmap'ed area is munmap'ed.  Therefore I assume that the
> >implementation in Lisp keeps bits of memory around which are not
> >munmap'ed for some internal reason.
> >
> >Of course it's also possible that there's a bug in Cygwin related to the
> >way mmap/munmap is called.  But I have so far no evidence for that and
> >simple mmap/munmap tests show that VirtualFree is called as soon as all
> >pages in a mmap'ed area have been munmap'ed.  If somebody thinks there's
> >a bug in this implementation, please send a simple, self-contained
> >testcase in pure C source code, which allows to reproduce the problem.
> >Of course, patches are welcome, too :)
> 
> And there's the known mmap() under cygwin limitation, esp. harmful to 
> clisp, that mmap() can only be properly aligned to a base address modulo 
> 64k (windows "allocation  granularity"), and not the usual pagesize, if 
> it's 4k or 8k. windows pagesize is still 4k though.
> 
> http://www.cygwin.com/ml/cygwin/2000-09/msg00380.html
> http://www.cygwin.com/ml/cygwin/2004-09/msg00741.html

This is a non-issue since 1.5.19:

http://cygwin.com/ml/cygwin-announce/2006-01/msg00016.html


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.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]