Skip to content

New kernel compatibility; obstack; pthread_getname_np

Samuel Holland requested to merge smaeul/gcompat:patch-4 into master

The gcompat loader compiled as a static binary doesn't work on Linux since a4ff8e8620d3f4, failing with an error like:

[349055.473655] 13325 (cmake): Uhuuh, elf segment at 0000000000400000 requested but the memory is mapped already

This is because the actual binary we want to run is also loaded at 0x400000. While it's actually okay to overlap the binary, since we're going to call execve again, the kernel doesn't allow the overlap anymore. Fix that by compiling the loader as static PIE, so it can be put at a different address.

Also add pthread_getname_np and the option to link obstack.

Merge request reports