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: fork fails after nmap with hint address in an unmapped memory region


I used a temporary fix that may give you a hint.

hint_addr = hint_addr - hint_addr % getpagesize(); // temporary fix

I also used it in luajit, which uses a random hint_addr, and everything is fine.

On 09/12/2017 18:29, Brian Inglis wrote:

   On 2017-12-09 08:53, Stéphane Mbape via cygwin wrote:

       Le 09/12/2017 à 16:48, Andrey Repin a écrit :

               While embeding luajit in a c  program, I found myself unable to fork
               processes.
               Investigations prove that it was related to nmap.
               To be accurate, calling nmap with hint address in a unmapped memory
               region will cause all forks to fail with
               "fixup_mmaps_after_fork: ReadProcessMemory failed for MAP_PRIVATE
               address 0x6FFFFFE0000, Win32 error 299"
               There is a sample code below.

           You forgot to mention Cygwin version you're using, and please provide the
           sample as an attach to save people the copy-pasting issues.

       Cygwin version: 2.9.0
       OS: Windows 10
       Arch: 64bit
       The sample was also attached.

   Confirmed reproducible; addr2line does not give anything useful from the
   stackdump, but included raw stackdump below, in case it gives hints.

Attachment: doscript.c
Description: Text document

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

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