public inbox for cygwin-cvs@sourceware.org
help / color / mirror / Atom feed
* [newlib-cygwin] Cygwin: mmap_alloc: fix comment to document using the extended memory API
@ 2020-04-07 16:24 Corinna Vinschen
  0 siblings, 0 replies; only message in thread
From: Corinna Vinschen @ 2020-04-07 16:24 UTC (permalink / raw)
  To: cygwin-cvs

https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=3fe9b02ccd6aeb684e39ca3fb9a6fd3ee5ede852

commit 3fe9b02ccd6aeb684e39ca3fb9a6fd3ee5ede852
Author: Corinna Vinschen <corinna@vinschen.de>
Date:   Tue Apr 7 14:17:04 2020 +0200

    Cygwin: mmap_alloc: fix comment to document using the extended memory API
    
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>

Diff:
---
 winsup/cygwin/mmap_alloc.cc | 23 +++++++++++++----------
 1 file changed, 13 insertions(+), 10 deletions(-)

diff --git a/winsup/cygwin/mmap_alloc.cc b/winsup/cygwin/mmap_alloc.cc
index b42bc16e1..cd4d49bc9 100644
--- a/winsup/cygwin/mmap_alloc.cc
+++ b/winsup/cygwin/mmap_alloc.cc
@@ -4,17 +4,20 @@
 #include "mmap_alloc.h"
 #include <sys/param.h>
 
-/* FIXME?  Unfortunately the OS doesn't support a top down allocation with
-	   a ceiling value.  The ZeroBits mechanism only works for
-	   NtMapViewOfSection and it only evaluates the high bit of ZeroBits
-	   on 64 bit, so it's pretty much useless for our purposes.
+/* Starting with Windows 10 1803 we use VirtualAlloc2 and MapViewOfFile3
+   (or rather NtMapViewOfSectionEx), rather than the below class.
+
+   Up to Windows 10 1709, the OS doesn't support a top down allocation with
+   a ceiling value.  The ZeroBits mechanism only works for NtMapViewOfSection
+   and it only evaluates the high bit of ZeroBits on 64 bit, so it's pretty
+   much useless for our purposes.
+
+   If the below simple mechanism to perform top-down allocations turns out to
+   be too dumb, we need something else.  One idea is to divide the space in
+   (3835) 4 Gig chunks and just store the available free space per slot.  Then
+   we can go top down from slot to slot and only try slots which are supposed
+   to have enough space.  Bookkeeping would be very simple and fast. */
 
-	   If the below simple mechanism to perform top-down allocations
-	   turns out to be too dumb, we need something else.  One idea is to
-	   dived the space in (3835) 4 Gig chunks and simply store the
-	   available free space per slot.  Then we can go top down from slot
-	   to slot and only try slots which are supposed to have enough space.
-	   Bookkeeping would be very simple and fast. */
 PVOID
 mmap_allocator::alloc (PVOID in_addr, SIZE_T in_size, bool fixed)
 {


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-04-07 16:24 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-07 16:24 [newlib-cygwin] Cygwin: mmap_alloc: fix comment to document using the extended memory API 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).