[PATCH] Avoid PLT when calling __sched_getaffinity_new
H.J. Lu
hjl.tools@gmail.com
Wed Oct 14 15:11:00 GMT 2015
On Wed, Oct 14, 2015 at 8:06 AM, Joseph Myers <joseph@codesourcery.com> wrote:
> On Wed, 14 Oct 2015, H.J. Lu wrote:
>
>> On Wed, Oct 14, 2015 at 5:41 AM, Florian Weimer <fweimer@redhat.com> wrote:
>> > On 08/21/2015 07:09 PM, H.J. Lu wrote:
>> >> This patch adds an internal entry for __sched_getaffinity_new so that
>> >> __sched_getaffinity_old calls __sched_getaffinity_new without going
>> >> through PLT.
>> >>
>> >> OK for master?
>> >
>> > This phenomenon is not restricted to just this file. Why do you need to
>> > change this instance in particular?
>> >
>>
>> I opened BZ #18822 and I will remove unnecessary PLT one by one.
>
> Will you also add a testcase for this issue? (You'll need to allow for
> the relocation / relocations in question depending on the architecture,
> with some architectures not having any difference in relocations depending
> on whether functions are marked hidden and so not being able to run such a
> relocation-based test - it might however be possible to test in a
> different way not depending on names of relocations. As usual, if you
> make a change that doesn't include the corresponding changes for all
> architectures, <https://sourceware.org/glibc/wiki/PortStatus> needs
> updating to list non-updated architectures and describe what should be
> done for them.)
I don't have a testcase yet. After removing all unnecessary PLT relocations
on i386 and x86-64, we can do something similar to scripts/localplt.awk
to check libc_pic.a. Each arch can provide its own list, similar to
localplt.data.
--
H.J.
More information about the Libc-alpha
mailing list