vdso function descriptors (VDS64_HAS_DESCRIPTORS)?

Joe Lawrence joe.lawrence at redhat.com
Tue Feb 25 02:20:59 AEDT 2020


On 2/24/20 5:17 AM, Benjamin Herrenschmidt wrote:
> On Sat, 2020-02-22 at 18:07 -0600, Segher Boessenkool wrote:
>>>
>>> so I don't believe they are ever used by default -- in this case
>>> V_FUNCTION_BEGIN doesn't add to the .opd section with .name, .TOC base,
>>> etc.
>>>
>>> Manually setting VDS64_HAS_DESCRIPTORS results in a vdso64.so in which
>>> binutils tools like readelf properly report functions with symbol type
>>> FUNC instead of NOTYPE.
>>>
>>> Are there pieces of the build/etc toolchain unprepared for function
>>> descriptors?  I'm just trying to figure out why the code defaults to
>>> unsetting them.
>>
>> Because direct calls are faster than indirect calls?  Ben might have a
>> fuller explanation, cc:ing him.
> 
> I don't remember why :-) I think I didn't want to mess with the OPD
> fixup in glibc back then.
> 

Does it make sense to just drop the unused VDS64_HAS_DESCRIPTORS code then?

-- Joe



More information about the Linuxppc-dev mailing list