From: "H. Peter Anvin" <hpa@zytor.com>
To: josh@joshtriplett.org, John Stultz <john.stultz@linaro.org>
Cc: ksummit-discuss@lists.linuxfoundation.org
Subject: Re: [Ksummit-discuss] [CORE TOPIC] Dealing with 2038
Date: Mon, 05 May 2014 19:12:54 -0700 [thread overview]
Message-ID: <53684526.7060507@zytor.com> (raw)
In-Reply-To: <20140505205339.GB15815@cloud>
On 05/05/2014 01:53 PM, josh@joshtriplett.org wrote:
>
> I would be interested in this, not just because of time_t itself, but as
> a general pattern for "how can we transition away from an old and broken
> ABI". Whether by introducing new system calls, new personalities,
> seccomp filters, or other mechanisms, we should have some ways to start
> such transitions and to smooth them out. Sure, we never break
> userspace, but that just means we need an appropriate
> CONFIG_OLD_AND_BUSTED option for as long as people still need the old
> ABI.
>
There is absolutely nothing new here... we have dealt with these kinds
of transitions for most of Linux' existence.
However, time_t is a particularly nontrivial issue, because it is not
just a matter of changing the kernel ABI but a *lot* of user space ABIs
also contain this type. The kernel/glibc interfaces are pretty well set
up to handle this properly these days, but I have very little hope that
all the user space libraries will properly handle having two versions of
a bunch of APIs with different version numbers.
On the other hand, a *limited* form of compatibility could be had by
changing the windowing by changing int32_t (1901-2038) to uint32_t
(1970-2106). This is similar to how a lot of legacy applications were
"fixed" for the Y2K problem.
That has its own share of problems, in particular legacy applications
might end up thinking that 2039 comes long before 2037, but there is to
some degree a choice of plague or cholera, as we say in Swedish.
-hpa
next prev parent reply other threads:[~2014-05-06 2:13 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-05 18:33 John Stultz
2014-05-05 19:23 ` Andy Lutomirski
2014-05-05 20:53 ` josh
2014-05-05 23:20 ` Andy Lutomirski
2014-05-06 2:12 ` H. Peter Anvin [this message]
2014-05-06 2:21 ` Josh Triplett
2014-05-06 12:57 ` Theodore Ts'o
2014-05-06 17:53 ` John Stultz
2014-05-06 18:20 ` Arnd Bergmann
2014-05-06 20:19 ` Theodore Ts'o
2014-05-06 20:33 ` josh
2014-05-06 20:50 ` Theodore Ts'o
2014-05-06 22:06 ` John Stultz
2014-05-07 2:07 ` Theodore Ts'o
2014-05-07 11:19 ` Jonathan Corbet
2014-05-07 17:28 ` John Stultz
2014-05-09 15:05 ` Theodore Ts'o
2014-05-08 20:37 ` Ben Hutchings
2014-05-09 15:10 ` Theodore Ts'o
2014-05-09 20:39 ` Arnd Bergmann
2014-05-09 22:33 ` Josh Triplett
2014-05-10 0:16 ` H. Peter Anvin
2014-05-10 1:44 ` Rafael J. Wysocki
2014-05-15 12:18 ` Grant Likely
2014-05-15 17:20 ` H. Peter Anvin
2014-05-16 2:50 ` Jason Cooper
2014-05-10 0:19 ` Andy Lutomirski
2014-05-06 21:17 ` Daniel Phillips
2014-05-06 21:56 ` Luck, Tony
2014-05-07 1:56 ` Daniel Phillips
2014-05-07 14:00 ` Grant Likely
2014-05-09 17:30 ` H. Peter Anvin
2014-05-06 1:25 ` Li Zefan
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=53684526.7060507@zytor.com \
--to=hpa@zytor.com \
--cc=john.stultz@linaro.org \
--cc=josh@joshtriplett.org \
--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