Linux distributions that have not patched their long-term kernels with https://git.kernel.org/linus/a87938b2e246b81b4fb713edb371a9fa3c5c3c86 (committed on April 14, 2015). This kernel vulnerability was fixed in April 2015 by commit a87938b2e246b81b4fb713edb371a9fa3c5c3c86 (backported to Linux 3.10.77 in May 2015), but it was not recognized as a security threat. With CONFIGARCHBINFMTELFRANDOMIZEPIE enabled, and a normal top-down address allocation strategy, loadelfbinary() will attempt to map a PIE binary into an address range immediately below mm->mmapbase. Unfortunately, loadelf binary() does not take account of the need to allocate sufficient space for the entire binary which means that, while the first PTLOAD segment is mapped below mm->mmapbase, the subsequent PTLOAD segment(s) end up being mapped above mm->mmapbase into the are that is supposed to be the "gap" between the stack and the binary.