Memory layout patch

Corinna Vinschen corinna-cygwin@cygwin.com
Thu Feb 12 20:38:30 GMT 2026


Hi Igor,

On Feb 12 14:50, Igor Podgainoi wrote:
> Thank you for your reply!
> 
> On Jan 20 12:58, Corinna Vinschen wrote:
> > Question here is: Is just ASLR enforced or High Entropy ASLR?
> >
> > If the first, we have to make sure to compile all Cygwin binaries as
> > non-HEVA.
> >
> > If the latter, we have a really hard fork() problem which can't be
> > fixed by your patch...
> 
> According to my latest tests, only ASLR itself is enforced
> (IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE), while High Entropy ASLR
> (IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA) can successfully be
> turned off at least on Windows 11 23H2 build 10.0.22631.5909.
> 
> Also, it looks like there are no more memory collision problems
> after disabling HEVA. The tests ltp/fork06.exe, ltp/fork07.exe and
> ltp/fork11.exe pass successfully even with an increased number of
> iterations. Other tests also do not seem to be affected.

I'm *very* glad to read this.

> What are your thoughts on this? In my opinion, it should be fine at
> least as a temporary solution, until the binutils/GCC and Cygwin
> communities figure out how to properly fix HEVA support in Cygwin
> on AArch64.

See my patch reply.  It's fine even for the long term, I think.


Thanks,
Corinna


More information about the Cygwin-developers mailing list