[PATCH] i386: Remove PLT0 and use non-lazy PLT if PLT0 is unused
Florian Weimer
fweimer@redhat.com
Mon May 8 15:54:00 GMT 2017
On 05/08/2017 05:43 PM, H.J. Lu wrote:
>> Yes IMO, LD_AUDIT + -z now should force the GOT entries to remain forever
>> resolved to the stub PLT entry in a read-only mapping. This however means
>> keeping around the PLT entries, which is what you're trying to remove, but
>> shouldn't without an additional optimization flag.
>
> -z now has disabled LD_AUDIT since binutils 2.26.
I think this is a bug in binutils 2.26 and later. I did not realize
this at the time (my understanding of LD_AUDIT is limited).
We both have large-scale users of LD_AUDIT. They might be able to
migrate off x86 before the -z now breakage hits them (keep in mind that
we have pushed -z now as a recommended hardening flag for a long time),
but I wouldn't count on that, and I wouldn't want to subject them to
that anyway.
>> This is bad. I know of lots of users that are going to be unhappy if we
>> continue to remove LD_AUDIT support. For now it works in their own applications,
>> but I'd like to see LD_AUDIT work with -z now.
>
> I didn't see any binutils bug report for this issue. Also there is no glibc
> test to check that -z now works with LD_AUDIT.
There were, sort of, but you adjusted those tests instead of revisiting
the binutils change and its impact. I'm afraid I didn't realize that at
the time.
Thanks,
Florian
More information about the Libc-alpha
mailing list