This goes back to commit 2d0747b5a1f4 ("parlib: Don't run ctors in "fake
parlib"").

That commit worked if the library was loaded first, as is the case with
e.g. libelf.so. However, if the library was loaded after the binary, it
might see the program binary's _start, and rightly notice it differs from
__fake_start. To make matters worse, whether or not the library's _start
was overloaded depended on whether or not the binary accessed it. It's a
mess that I never fully tracked down.

The current version does the trick, at least as long as we keep the binary
mapped below our anonymous mmaps.

If you're paranoid, rebuild the world, though that's probably unnecessary.
At least do this: