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 08/12] Use clock_gettime to implement gettimeofday.


On Thu, Aug 22, 2019 at 3:01 PM Zack Weinberg <zackw@panix.com> wrote:
>
> On 8/20/19 11:24 AM, Joseph Myers wrote:
> > On Tue, 20 Aug 2019, Zack Weinberg wrote:
> >
> >> __gettimeofday is no longer called by anyone, so remove its internal
> >> prototype and its entries in Versions and .abilist files.  (It would
> >> have been a GLIBC_PRIVATE symbol if the GLIBC_PRIVATE convention had
> >> been invented back in the days of 2.0.)
> >
> > That's not obviously safe. ... __gettimeofday is certainly the kind of symbol
> > that could have been used by a library with its own namespace concerns
> > (cf. past discussions of how we might enable libstdc++ to be
> > namespace-clean), although maybe more likely to have been used by an
> > application that should be using gettimeofday.
>
> Ugh, OK, I'll put it back in the Versions file.
>
> > Perhaps someone set up to do so could check large sets of current and past
> > distribution binaries for any reference to the __gettimeofday symbol in
> > executable / shared library dynamic symbol tables, as evidence for whether
> > such an ABI change is safe or not?
>
> I don't think this is important enough to go to that much trouble.

I had a quick look at debian code search and found a few hundred
copies of the glibc tempname.c:
https://codesearch.debian.net/show?file=parted_3.2-25%2Flib%2Ftempname.c&line=67

Then there are a few other references like faketime that try to
override gettimeofday in some form:
https://codesearch.debian.net/show?file=faketime_0.9.7-3%2Fsrc%2Flibfaketime.c&line=1679
https://codesearch.debian.net/show?file=datefudge_1.23%2Fdatefudge.c&line=69
https://codesearch.debian.net/show?file=cyrus-imapd_3.0.11-1%2Fcunit%2Ftimeofday.c&line=195

       Arnd


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