Re: [ntpwg] Bug: Status/Summary of slashdot leap-second crash on new years 2008-2009

M. Warner Losh
2009-01-06T19:57:13Z

In message: <3ae3aa420901052053m5a410671u13ecccfb7e29260c@mail.gmail.com>
"Linas Vepstas" <linasvepstas@gmail.com> writes:
: 2009/1/5 john stultz-lkml <johnstul.lkml@gmail.com>:
: > On Mon, Jan 5, 2009 at 9:42 AM, Linas Vepstas <linasvepstas@gmail.com> wrote:
: > [snip]
: >> The long term solution would be write an RFC to extend
: >> NTP to also provide TAI information -- e.g. to add a
: >> message that indicates the current leap-second offset
: >> between UTC and TAI.
: >
: > I believe Roman has already added this ability:
: > http://git.kernel.org/gitweb.cgi?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=153b5d054ac2d98ea0d86504884326b6777f683d;hp=9f14f669d18477fe3df071e2fa4da36c00acee8e
:
: Well, you're answering a different statment than what
: I was talking about -- I wanted to make sure that TAI
: information was available via NTP -- this has nothing
: to do with the kernel, and would be something available
: to all operating systems.
:
: Anyway -- I'm looking at the patch you reference, and
: maybe I'm being dumb -- but -- I think I see a bug.
:
: case TIME_DEL decrements TAI, but TIME_INS does
: not increment it. Instead, there's a lonely increment in
: TIME_OOP which seems wrong. ??

No. That's right. The increment doesn't happen until the leap second
has happened. The TIME_OOP exists to increment the TAI offset at the
right time. The decrement would happen right away, since the second
is deleted at the end of :58.

I had to draw lots of pictures when I was working this code out in
FreeBSD.

Warner