On Wed, 14 Jan 2015, Marcus Meissner wrote:
On Wed, Jan 14, 2015 at 04:41:17PM +0100, Jan Engelhardt wrote:
On Wednesday 2015-01-14 14:44, Marcus Meissner wrote:
Missing: Default full binding at load-time (BIND_NOW) It was not fully understood how this operates with dlopen and also with LD_PRELOADed overrides.
See caveats in gentoo page too, it might have negative drawbacks.
glibc is configured with --enable-bind-now, so is it really missing?
glibc --enable-bind-now only seems to affect glibc. This needs to be done per package (or globally in the linker).
With all the symbols that C++ libraries have, this would seem overly expensive. Has anyone measured this before global enablement?
I am not thinking we should enable bind-now globally as it might have weird effects.
(I am only planning on PIE right now.)
Note that PIE by itself has quite a cost on startup time due to
having way more relocations and thus touching more pages at
startup time (apart from the increase in binary size, of course),
also leading to less pages being shared across programs.
Richard.
--
Richard Biener