Date: Sun, 05 Aug 2018 08:22:38 -0600 From: Ian Lepore <ian@freebsd.org> To: Warner Losh <imp@bsdimp.com>, "Rodney W. Grimes" <rgrimes@freebsd.org> Cc: Conrad Meyer <cem@freebsd.org>, src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r337334 - head/lib/libc/sys Message-ID: <1533478958.9860.18.camel@freebsd.org> In-Reply-To: <CANCZdfpWh25X%2BkKsbrdNY697Ex%2BxG95crVRgKqVQpfrqZO_CoA@mail.gmail.com> References: <201808042208.w74M8OmD057603@repo.freebsd.org> <201808042224.w74MOgLi095274@pdx.rh.CN85.dnsmgr.net> <CANCZdfpWh25X%2BkKsbrdNY697Ex%2BxG95crVRgKqVQpfrqZO_CoA@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 2018-08-04 at 16:39 -0600, Warner Losh wrote: > On Sat, Aug 4, 2018 at 4:24 PM, Rodney W. Grimes < > freebsd@pdx.rh.cn85.dnsmgr.net> wrote: > > > > > > > > > Author: cem > > > Date: Sat Aug 4 22:08:24 2018 > > > New Revision: 337334 > > > URL: https://svnweb.freebsd.org/changeset/base/337334 > > > > > > Log: > > > settimeofday(2): Remove stale note about timezone > > > > > > Contrary to the removed comment, the kernel does appear to use the > > timezone > > > > > > argument of settimeofday. The comment dates to the BSD4.4 import; I > > assume it > > > > > > is just stale. > > In what way is the kernel using TZ? It shouldn't be. > > Or is it using the TZ to adjust the passed in time to UTC/GMT, > > which I would of thought is done before calling settimeofday. > > Specifically, for compatibility, we store minutes west of UTC on > settimeofday and we retrieve it for settimeofday. Otherwise it's 100% > unused by anything else at all in the system. Well, technically, we use it > for utc_offset, we don't really use that elsewhere (one can find references > in utc_offset, but usually we set this via adjkerntz, which is actively > used in the system). tz_minuteswest likely should just be removed, and the > argument to settimzeofday should just be completely ignored. > utc_offset is used by all RTC drivers, and by the convenience routines that convert times to/from FAT filesystem format (which I assume are used by FAT filesystem code, but I haven't checked that). So if the tz info passed to settimeofday() ends up in utc_offset, how can we be sure nobody is relying on that? > One could test it with date -t, nothing does that today. That should be > removed also. Likewise date -d. > > So while hyper technically, one could use this, nobody does, nor has since > between 4.3 and 4.4 when it was realized that storing the timezone in the > kernel was a really stupid idea. That's what the language used in the man > page that you removed was trying to say. > > Warner > > > > > > > > > > Modified: > > > head/lib/libc/sys/gettimeofday.2 > > > > > > Modified: head/lib/libc/sys/gettimeofday.2 > > > ============================================================ > > ================== > > > > > > --- head/lib/libc/sys/gettimeofday.2 Sat Aug 4 21:57:17 2018 > > (r337333) > > > > > > +++ head/lib/libc/sys/gettimeofday.2 Sat Aug 4 22:08:24 2018 > > (r337334) > > > > > > @@ -28,7 +28,7 @@ > > > .\" @(#)gettimeofday.2 8.2 (Berkeley) 5/26/95 > > > .\" $FreeBSD$ > > > .\" > > > -.Dd December 27, 2015 > > > +.Dd August 4, 2018 > > > .Dt GETTIMEOFDAY 2 > > > .Os > > > .Sh NAME > > > @@ -44,11 +44,6 @@ > > > .Ft int > > > .Fn settimeofday "const struct timeval *tp" "const struct timezone *tzp" > > > .Sh DESCRIPTION > > > -.Bf -symbolic > > > -Note: timezone is no longer used; this information is kept outside > > > -the kernel. > > > -.Ef > > > -.Pp > > > The system's notion of the current Greenwich time and the current time > > > zone is obtained with the > > > .Fn gettimeofday > > > > > > > > -- > > Rod Grimes > > rgrimes@freebsd.org > > > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1533478958.9860.18.camel>