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: [PATCH 09/12] Finish move of clock_* functions to libc.


On Tue, Aug 20, 2019 at 11:13 AM Joseph Myers <joseph@codesourcery.com> wrote:
> On Tue, 20 Aug 2019, Zack Weinberg wrote:
>
> > In glibc 2.17, the functions clock_getcpuclockid, clock_getres,
> > clock_gettime, clock_nanosleep, and clock_settime were moved from
> > librt.so to libc.so, leaving compatibility stubs behind.  Now that the
> > dynamic linker no longer insists on finding versioned symbols in the
> > same library that originally defined them, we do not need the stubs
> > anymore, and this means we don’t need GLIBC_PRIVATE __-prefix aliases for
> > most of the functions anymore either.  (clock_gettime is still called
> > all over the place internally and therefore still needs one.)
>
> But my understanding is that moving a function to libc like that only
> works if libc has the symbol *at the same version* as it had in the
> library from which it was removed.  And I don't see anything in this patch
> to add the older symbol version for these functions to libc (in the
> implementation and the ABI test baselines) (so libc would then have these
> functions at two symbol versions on most platforms, with both versions
> pointing to the same function implementations).

I thought so too, at first, but Florian's patches to remove forwarding
stubs from libpthread have not been adding older symbol versions to
libc.so either, so that made me think it wasn't necessary after all.
Florian, can you comment?

zw


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