This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RFC: x86: Fall back to lazy binding for unrelocated IFUNC symbol [BZ #23240]


On Wed, Jun 6, 2018 at 7:54 AM, Florian Weimer <fweimer@redhat.com> wrote:
> On 06/06/2018 04:50 PM, H.J. Lu wrote:
>>
>> On Wed, Jun 6, 2018 at 7:04 AM, Florian Weimer <fweimer@redhat.com> wrote:
>>>
>>> On 06/05/2018 09:24 PM, Florian Weimer wrote:
>>>>
>>>>
>>>> On 05/28/2018 09:51 PM, H.J. Lu wrote:
>>>>>
>>>>>
>>>>> Here is the updated patch.  It fails to back lazy binding only
>>>>> if GOT is writable.
>>>>
>>>>
>>>>
>>>> I think this still sets a wrong incentive, as in “you need to have a
>>>> writable GOT for full forwards compatibility with future library
>>>> evolution”.
>>>>
>>>> I think if we detect an IFUNC-based relocation against a
>>>> not-yet-fully-relocated object, we need to delay this relocation
>>>> processing
>>>> and perform a second pass of all delayed relocations.  I have a patch
>>>> which
>>>> needs a little bit of work, but looks quite promising (to me at least).
>>>
>>>
>>>
>>> Here are my patches:
>>>
>>> https://sourceware.org/ml/libc-alpha/2018-06/msg00076.html
>>> https://sourceware.org/ml/libc-alpha/2018-06/msg00077.html
>>>
>>> I hope they address your needs.
>>
>>
>> Do you have a git branch I can use?
>
>
> I've pushed it to fw/bug21242.
>

I pushed hjl/pr23240/fw, which is fw/bug21242 + tests for [BZ #23176] and
[BZ #23240].

1. On x86-64:

FAIL: elf/reldep6a

2. On i686:

FAIL: elf/ifuncpreload1
FAIL: elf/reldep6a

So your patches didn't fix:

1,. IFUNC on i686.
2.  Weak reference.

-- 
H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]