This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH v2 07/12] elf: Move vDSO setup to rtld (BZ#24967)
On 13/12/2019 11:54, Florian Weimer wrote:
> * Adhemerval Zanella:
>
>> It is more complex to maintain a specific initialization code for some
>> arch and it is orthogonal to fix static dlopen. It also requires more
>> patch review iterations to get some more piece in place to keep providing
>> the ifunc optimization.
>>
>> So I see that if you think that the specific ifunc scenario, which is
>> already broken, is a block for BZ#24967 I see it is better to remove the
>> ifunc optimization and reinstate it once this ifunc scenario is fixed.
>
> Sorry, I agree my review wasn't helpful. I'm not sure if I can re-visit
> these patches today, though.
>
> Florian
>
I am now working a v3 for this set and it is not clear to me if you think
it is a good idea or not to move the vDSO pointer to _rtld_global_ro. I
am aware you have been working on trying to decouple and get rid of the
_dl_var_init, and on my v3 the ifunc variants will not depend on the
_rtld_global_ro, but rather call the vDSO resolve function (as currently
done).
Also, vDSO calls should not be a problem for static dlopen as indicated
by BZ#20802. The vDSO pointer would be zero-initialized and the syscall
will be issued instead. I see that we might this working once we we
have a proper fix for BZ#20802 and I don't see this as a blocker.