]> sourceware.org Git - newlib-cygwin.git/commit
Cygwin: map beyond EOF on 64 bit and WOW64 as well
authorCorinna Vinschen <corinna@vinschen.de>
Wed, 5 Jun 2019 18:08:34 +0000 (20:08 +0200)
committerCorinna Vinschen <corinna@vinschen.de>
Wed, 5 Jun 2019 18:08:34 +0000 (20:08 +0200)
commit605bdcd410384dda6db66b9b8cd19e863702e1bb
tree25f8f000f09ee72457eb937d65a45f3dcf705a11
parentb0c033bf3fae810b9e5a5c69f17bd4de63725691
Cygwin: map beyond EOF on 64 bit and WOW64 as well

32 bit Cygwin performs a POSIX-compatible mapping after EOF which
is not supported in this form on Windows.  The 64 bit Windows
kernel never supported the AT_ROUND_TO_PAGE mapping flag, so we
couldn't page-aligned map the space right after the file's EOF.
So mapping beyond EOF was disabled in 64 bit Windows and WOW64.

However,  if mmap works, a matching munmap should work as well,
*and* it should not accidentally unmap unrelated memory.

Therefore we enable mapping beyond EOF on 64 bit as well.  Since
that mapping is always 64K aligned, the are between the last file
page and the next 64K allocation boundary will be unallocated.
There's no way around that.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
winsup/cygwin/mmap.cc
This page took 0.030162 seconds and 5 git commands to generate.