[PATCH] x86: Generate PLT relocations for -z now
Carlos O'Donell
carlos@redhat.com
Thu May 11 16:44:00 GMT 2017
On 05/11/2017 10:51 AM, H.J. Lu wrote:
> The run-time R_X86_64_GLOB_DAT relocation against foo is
> required. There is no need to add another run-time
> R_X86_64_JUMP_SLOT relocation. We can add a linker option
> to generate the extra R_X86_64_JUMP_SLOT. But I don't think
> it should be the default.
I don't disagree with your analysis, I disagree with the execution
of the plan.
The plan should be:
(a) Analyze uses of the PLT entries.
In this case LD_AUDIT, LD_PROFILE, and ltrace all require them to
operate correctly.
(b) Develop plan for migrating developer tooling, like LD_AUDIT,
which is a part of glibc and is well supported.
(c) Choose one of:
(C.1) Make PLT elision optional e.g. -z noplt
or
(C.2) Make LD_AUDIT work with optimizations.
Right now we have ignored dependent tooling that requires this
feature and have pressed on ahead with optimizations that remove
a required feature.
If we don't want to do (C.1), then how do we do (C.2)?
--
Cheers,
Carlos.
More information about the Libc-alpha
mailing list