From: John Stultz <john.stultz@linaro.org>
To: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Cc: ksummit-discuss@lists.linuxfoundation.org
Subject: Re: [Ksummit-discuss] Leap second handling
Date: Tue, 15 Dec 2015 21:12:55 -0800 [thread overview]
Message-ID: <CALAqxLUxXSDCt+LVdiqpgY2zw0zxRP3zB+mR1xCaEE8hgWaGCg@mail.gmail.com> (raw)
In-Reply-To: <20151215141518.GE8574@piout.net>
[-- Attachment #1: Type: text/plain, Size: 2214 bytes --]
On Tue, Dec 15, 2015 at 6:15 AM, Alexandre Belloni <
alexandre.belloni@free-electrons.com> wrote:
> On 15/12/2015 at 13:12:03 +0100, Arnd Bergmann wrote :
> > What I think we don't do at all in the kernel is to keep track of past
> (or
> > even future) leap seconds, so if you need to encode a date in the past,
> > the kernel has no idea what the difference between UTC and TAI was at the
> > time, and if you encode a time in the future, you don't know if we will
> > insert a leap second before you get to that time. I think these are the
> > harder questions to solve first if you want to handle the X.509
> certificates
> > right, before we get to the question of what happens for dates *on* the
> > leap second.
> >
>
> My point of view is that we shouldn't do anything in the kernel and
> instead handle that with proper TZ files (see leapseconds in
> tzdata2015g). You can then handle your own leapseconds epoch and add
> future leapseconds without having to update your kernel.
>
So while these approaches are attractive, I think we're kind of stuck with
the current behavior. Posix times don't include leapseconds. So we repeat
the leap-second, and for those that care you can check the adjtimex
timestate to see if the TIME_OOP flag is set to detect leap-seconds in
progress.
So as long as there are leapseconds (and with the most recent discussion
on abolition not succeeding), we're going to have to keep the existing
behavior.
As for how to treat the certs, you're option #1 "Treat it as hh:mm:59" is
probably the closest to what the kernel does, since it repeats the 59th
second on the leapsecond.
Arnd' suggestion of encoding it into TAI is also something to consider as
it is close to your suggestion, as it basically doesn't have any
leapseconds (just a number of seconds since 1970) but requires you have a
table of leap-seconds to properly translate between TAI time values to UTC
and back. The other problem with TAI is that while the kernel supports it,
not many systems are configured to properly initialize it, so its likely to
match UTC most of the time. But if you're only using TAI internally in your
app, and translating out to UTC as needed, that might not matter.
thanks
-john
[-- Attachment #2: Type: text/html, Size: 2798 bytes --]
next prev parent reply other threads:[~2015-12-16 5:12 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-15 11:33 David Howells
2015-12-15 12:12 ` Arnd Bergmann
2015-12-15 14:15 ` Alexandre Belloni
2015-12-16 5:12 ` John Stultz [this message]
2015-12-17 0:32 ` David Howells
2015-12-17 0:44 ` John Stultz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CALAqxLUxXSDCt+LVdiqpgY2zw0zxRP3zB+mR1xCaEE8hgWaGCg@mail.gmail.com \
--to=john.stultz@linaro.org \
--cc=alexandre.belloni@free-electrons.com \
--cc=ksummit-discuss@lists.linuxfoundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox