mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Linas Vepstas" <linasvepstas@gmail.com>
To: mayer@ntp.isc.org
Cc: david@lang.hm, "Robert Hancock" <hancockr@shaw.ca>,
	"Ben Goodger" <goodgerster@gmail.com>,
	"Kyle Moffett" <kyle@moffetthome.net>,
	MentalMooMan <slashdot@jameshallam.info>,
	"David Newall" <davidn@davidnewall.com>,
	linux-kernel@vger.kernel.org, ntpwg@lists.ntp.isc.org,
	"Travis Crump" <pretzalz@techhouse.org>,
	burdell@iruntheinter.net, "Nick Andrew" <nick@nick-andrew.net>,
	"Jeffrey J. Kosowsky" <jeff@kosowsky.org>
Subject: Re: [ntpwg] Bug: Status/Summary of slashdot leap-second crash on new years 2008-2009
Date: Wed, 7 Jan 2009 09:42:53 -0600	[thread overview]
Message-ID: <3ae3aa420901070742t8639479qe52cdb615bf46237@mail.gmail.com> (raw)
In-Reply-To: <4964BD76.9090700@ntp.isc.org>

Thanks for the reply.

2009/1/7 Danny Mayer <mayer@ntp.isc.org>:
> Linas Vepstas wrote:
>> 2009/1/6 Danny Mayer <mayer@ntp.isc.org>:
>>> Why don't you tell us what the real problem is instead of telling us
>>> that you need TAI offset information?
>>
>> Currently, the Linux kernel keeps time in UTC. This means
>> that it must take special actions to tick twice when a leap
>> second comes by.  Due to a (stupid) bug, some fraction
>> of linux systems crashed; this includes everything from
>> laptops to servers, to DVR's,  to cell phones and cell
>> phone towers. There's now a fix for this.
>>
>> However, during the discussion, the idea came out that
>> maybe keeping UTC time in the kernel is just plain stupid.
>> So there's this idea floating around that maybe the kernel
>> should keep TAI time instead. The hope is that this will
>> reduce the complexity in the kernel, and push it out to
>> user space, "where it belongs" (to repeat a well-worn
>> mantra).
>>
>> However, *if* we were to kick UTC out of the kernel,
>> and push it to user-land, then, of course, there's a
>> different problem: how does the kernel know what the
>> correct TAI time is?  As your reply makes abundantly
>> clear, NTP is not a good source for TAI information.

[...]

>>   a discussion of a particular issue
>> that would arise if the kernel were to keep TAI -- if it did,
>> then user-space systems would need to have a reliable
>> source for leap-seconds. Since NTP does not
>> provide this, there was discussion about how that
>> could be worked-around. This then lead to the comment
>> that, "gee, wouldn't the right long-term solution be that
>> NTP provide TAI info?"
>
> NTP can provide leap-second information via an autokey protocol request,
>  see Section 10.6 Leapseconds Values Message (LEAP)
> http://www.ietf.org/internet-drafts/draft-ietf-ntp-autokey-04.txt but

Yes, that look like exactly what would be wanted.  It would be nice
if such a message was available in the regular, non-encrypted protocol.

> that means you need to have autokey set up with another NTP server and
> that means adding infrastructure that you probably don't want and are
> not prepared to handle.

Heh. Yes, well, I still haven't figured out how to secure DNS. Yet clearly
this whole security mess must march on, and somehow the security
infrastructure must eventually become easy to install.

>> Clearly, it would be a lot of work to get the kernel to keep
>> TAI instead of UTC, so this is not, at this time, a "serious
>> proposal".  But if it were possible, and all the various
>> little issues that result were solvable, then it does seem
>> like a better long-term solution.
>>
>
> This is a *lot* more complicated than you might think. If you are
> thinking of implementing this similarly to the way timezone information
> is added for display purposes, you need the whole list of leap seconds
> and when the change happened since you now have to look at a timestamp
> and see when it was and then apply all of the leapseconds up to that
> point in time and none of the leapseconds beyond that. In addition, you
> have legacy files that have UTC timestamps on them so you would need to
> distinguish between UTC (legacy) and TAI timestamps in the file system
> among other places (anywhere where a timestamp exists) and what would
> you do about database tables which contain timestamps? The list goes on.

Yes.

> I'd much rather you spend the time tackling the clock interrupt losses
> that many of our Linux users complain about. See:
> https://support.ntp.org/bin/view/Support/KnownOsIssues#Section_9.2.4.
> for some of the gorier details. I'm sure you don't really want us
> recommending that they set HZ=100 in the kernel to alleviate the problem.

Actually, this is rather sorely lacking in 'gory details', rather, its
a complaint
that 'things don't work' with no discussion of the actual problem.  It would
be much better if there was a link to any previous discussions on LKML on
this issue.

My knee-jerk reaction on reading about the lost-interrupts issue is that,
yes, setting HZ=100 and disabling ACPI is indeed a decent short-term
work-around (APIC is something completely different and not something
you can disable). The correct long-term solution would be to use real-time
kernels, which are designed to make sure that things like lost interrupts
never happen.

I have no idea what the status of real-time Linux is, whether it would now
have gaurantees for timer ticks, and whether anything there would now
be mergeable into the mainline kernel.

--linas

  reply	other threads:[~2009-01-07 15:43 UTC|newest]

Thread overview: 107+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-02 19:25 Linas Vepstas
2009-01-02 20:04 ` Diego Calleja
2009-01-02 20:25   ` Robert Hancock
2009-01-03  6:32     ` David Newall
2009-01-03  6:37       ` Ben Goodger
2009-01-04  8:43         ` David Newall
2009-01-04  9:00           ` Kyle Moffett
2009-01-04 10:03             ` David Newall
2009-01-04 11:13               ` david
2009-01-04 23:15                 ` David Newall
2009-01-04 23:25                   ` Chris Adams
2009-01-05  0:01                     ` David Newall
2009-01-05  0:41                       ` Alan Cox
2009-01-05  8:43                         ` David Newall
2009-01-05 19:47                           ` Alan Cox
2009-01-05  0:29                   ` david
2009-01-04 23:37                     ` David Newall
2009-01-05  1:05                       ` david
2009-01-05  0:14                         ` David Newall
2009-01-05  0:21                           ` Ben Goodger
2009-01-05  6:34                             ` David Newall
2009-01-05 23:03                               ` Linas Vepstas
2009-01-05  0:44                         ` Alan Cox
2009-01-05  5:48                       ` Linas Vepstas
2009-01-05 14:33                         ` Nick Andrew
2009-01-05 16:08                           ` Linas Vepstas
2009-01-05 17:51                             ` david
2009-01-05 17:42                               ` Linas Vepstas
2009-01-06  2:27                                 ` john stultz-lkml
2009-01-06  4:53                                   ` Linas Vepstas
2009-01-06  5:00                                     ` Linas Vepstas
2009-01-06 19:40                                     ` [ntpwg] " M. Warner Losh
2009-01-06 19:50                                 ` M. Warner Losh
2009-01-07  3:50                                 ` Danny Mayer
2009-01-07  4:52                                   ` Linas Vepstas
2009-01-07 10:03                                     ` David Newall
2009-01-07 17:24                                       ` M. Warner Losh
2009-01-08 16:51                                         ` Magnus Danielson
2009-01-07 14:34                                     ` Danny Mayer
2009-01-07 15:42                                       ` Linas Vepstas [this message]
2009-01-07 19:23                                         ` Danny Mayer
2009-01-07 16:04                                       ` john stultz
2009-01-07 17:36                                     ` M. Warner Losh
2009-01-07 17:39                                   ` M. Warner Losh
2009-01-07 19:31                                     ` Alan Cox
2009-01-07 19:42                                       ` M. Warner Losh
2009-01-08  3:57                                       ` Danny Mayer
2009-01-08  4:42                                         ` M. Warner Losh
2009-01-08 10:48                                           ` Alan Cox
2009-01-08 10:56                                             ` Alan Cox
2009-01-08 22:22                                               ` David Mills
2009-01-08 15:02                                             ` M. Warner Losh
2009-01-08 18:57                                               ` Marshall Eubanks
2009-01-08 20:09                                     ` Steve Allen
2009-01-12 16:11                                 ` Pavel Machek
2009-01-12 17:07                                   ` [ntpwg] " M. Warner Losh
2009-01-12 21:45                                     ` Valdis.Kletnieks
2009-01-06  2:31                             ` Nick Andrew
2009-01-06  1:59                           ` David Newall
2009-01-06  2:18                             ` Chris Adams
2009-01-06  2:51                             ` Nick Andrew
2009-01-06  9:40                               ` Alan Cox
2009-01-07  1:17                                 ` Nick Andrew
2009-01-07  9:37                                   ` Alan Cox
2009-01-07  9:46                                 ` David Newall
2009-01-07  9:54                                   ` Alan Cox
2009-01-07 10:18                                     ` David Newall
2009-01-07 10:52                                       ` Alan Cox
2009-01-07 13:45                                         ` David Newall
2009-01-07 14:10                                           ` Alan Cox
2009-01-07 14:36                                             ` David Newall
2009-01-07 15:40                                               ` Alan Cox
2009-01-10  9:46                                                 ` David Newall
2009-01-07 22:13                                               ` Chris Adams
2009-01-07 13:33                                       ` Chris Adams
2009-01-07 13:37                                         ` Alan Cox
2009-01-07 14:12                                           ` David Newall
2009-01-07 14:09                                         ` David Newall
2009-01-07 21:42                                           ` Chris Adams
2009-01-04 11:35               ` Valdis.Kletnieks
2009-01-05  0:08                 ` David Newall
2009-01-06  3:53                   ` Valdis.Kletnieks
2009-01-04 17:20               ` Kyle Moffett
2009-01-03  7:00       ` Chris Adams
2009-01-04  8:41         ` David Newall
2009-01-02 20:29   ` Linas Vepstas
     [not found] ` <8752a8760901021328t545a0327v58faebe1e921680a@mail.gmail.com>
2009-01-02 21:29   ` Ben Goodger
2009-01-03  0:21 ` Chris Adams
2009-01-03  2:23   ` Duane Griffin
2009-01-03  3:45     ` Linas Vepstas
2009-01-03  4:41     ` [PATCH] " Chris Adams
2009-01-03  4:52       ` Duane Griffin
2009-01-03 18:01         ` [PATCH] v2 " Chris Adams
2009-01-03 19:04           ` Duane Griffin
2009-01-03 20:01           ` Linas Vepstas
2009-06-08  2:18           ` Ben Hutchings
2009-06-18 22:34             ` Chris Friesen
2009-06-18 22:58               ` Ben Hutchings
2009-06-18 23:48                 ` Chris Friesen
2009-01-06  2:21   ` john stultz-lkml
2009-01-06  2:25     ` Chris Adams
2009-01-06  4:35     ` Linas Vepstas
2009-01-03  3:49 ` Linas Vepstas
2009-01-03  4:02   ` Ben Goodger
2009-01-03  4:46     ` Duane Griffin
2009-01-03  4:50       ` Ben Goodger
2009-01-03 22:58   ` Jeffrey J. Kosowsky

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=3ae3aa420901070742t8639479qe52cdb615bf46237@mail.gmail.com \
    --to=linasvepstas@gmail.com \
    --cc=burdell@iruntheinter.net \
    --cc=david@lang.hm \
    --cc=davidn@davidnewall.com \
    --cc=goodgerster@gmail.com \
    --cc=hancockr@shaw.ca \
    --cc=jeff@kosowsky.org \
    --cc=kyle@moffetthome.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mayer@ntp.isc.org \
    --cc=nick@nick-andrew.net \
    --cc=ntpwg@lists.ntp.isc.org \
    --cc=pretzalz@techhouse.org \
    --cc=slashdot@jameshallam.info \
    /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

Powered by JetHome