Large-Address awareness on 64 bit systems
Tue Jun 21 15:14:00 GMT 2011
On 21/06/2011 4:21 AM, Corinna Vinschen wrote:
> Hi Ryan,
> On Jun 18 16:32, Ryan Johnson wrote:
>> - deliberately dlopen-ing two dlls with the same base address and
>> trying to fork
> Did you try the ASLR flag for your test DLLs? Does it help, perhaps?
> If the ASLR flag works as I understand it, the DLLs should be moved
> into a less dangerous memory area and be then fixed there.
ASLR works pretty well for dlls having static use patterns (including
apps which always open the same dlls), from what I can tell. The reason
I hadn't done it for that test app is because dlls created and loaded
dynamically by apps like gcc bootstrap wouldn't have it set either, and
I wanted a consistent way to reproduce the erratic fork problems that
they see as a result of the odd base address collision. Similarly, I
purposefully avoided rebasing or ASLR-ing my cygwin install while
testing the fork patches.
More information about the Cygwin-developers