This is the mail archive of the
cygwin-patches
mailing list for the Cygwin project.
Improvements to fork handling (5/5)
- From: Ryan Johnson <ryan dot johnson at cs dot utoronto dot ca>
- To: cygwin-patches at cygwin dot com
- Date: Wed, 11 May 2011 14:33:22 -0400
- Subject: Improvements to fork handling (5/5)
Hi all,
This last patch adds a small optimization which reserves the lower 4MB
of address space early in the process's lifetime (even if it's not a
forkee). This was motivated by the observation that Windows tends to
move things around a lot in that area, increasing the probability of
future fork failures if the parent allows cygwin dlls to land there.
The patch does not fully address the problem, however, because ASLR
clobbers addresses above 4M as well. As a result, this patch may or may
not improve fork success rates in practice: most fork failures for me
involve DLL_LINK dlls which landed badly in the child.
It should be independent of the other patches.
Ryan
Attachment:
fork-bad-addr.patch
Description: Text document
Attachment:
fork-bad-addr.changes
Description: Text document