Will Dormann
So apparently starting with Linux 5.18, ASLR is weakened for 64-bit executables, and absolutely BROKEN (i.e. not present) for 32-bit executables when the library is 2MB or larger.
Oops? 🤦♂️
https://zolutal.github.io/aslrnt/
@wdormann The proposed workarounds (increase # of ASLR bits) are 🤦. That's a non-starter for 32-bit (would fragment memory so bad you can't have any large maps/arrays) and still puts a nasty upper bound on ASLR strength on 64-bit. The right fix is to revert the behavior change and not over-align things.
@wdormann Pretty sure this is to use 2MB pages instead of 4K pages which has benefits for TLB use... but I see the problem. Esp on 32-bit mode, where you only have 2k possible 2M locations, there's not much randomness for location left.