linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: Takashi Iwai <tiwai@suse.de>
Cc: ALSA Development Mailing List <alsa-devel@alsa-project.org>,
	Takashi Iwai <tiwai@suse.com>,
	Baolin Wang <baolin.wang7@gmail.com>,
	y2038 Mailman List <y2038@lists.linaro.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Jaroslav Kysela <perex@perex.cz>, Mark Brown <broonie@kernel.org>
Subject: Re: [PATCH v6 0/8] Fix year 2038 issue for sound subsystem
Date: Wed, 13 Nov 2019 15:32:44 +0100	[thread overview]
Message-ID: <CAK8P3a2TMEUhzxH7RKvAW9STk33KrbCriUaQawOMffoFC6UTQw@mail.gmail.com> (raw)
In-Reply-To: <s5hk1847rvm.wl-tiwai@suse.de>

On Tue, Nov 12, 2019 at 9:37 PM Takashi Iwai <tiwai@suse.de> wrote:
> On Tue, 12 Nov 2019 16:16:34 +0100, Arnd Bergmann wrote:
> > I would like to propose merging this into the alsa tree after
> > the v5.5 merge window for inclusion into v5.6, to allow a good
> > amount of testing, in particular for the header changes that
> > may cause problems for user space applications.
>
> Agreed, it's still no urgent problem.

I actually do think it's getting urgent, anything that touches
the ABI must be done carefully and not rushed.

The urgency at the moment is that developers are starting to
deploy systems with 64-bit time_t with musl-libc making this
the default now, and 32-bit risc-v not offering 32-bit time_t at all.

At the moment, this means that audio support is broken for
them, and that needs to be fixed.

The other reason why lots of people care about moving all user
space to 64-bit time_t is that 32-bit hardware is slowly starting
to become less common. We know there will still be many
32-bit ARM systems operational in 2038, but most of them will
be on (then) 10+ year old hardware, running even older software
that already being worked on today. The longer it takes us to
stop using 32-bit time_t in user space, the more systems will
end up having to be thrown away rather than fixed.

> So now taking a quick look through the series, I find this approach is
> the way to go.  Although one might get a bit more optimization after
> squeeze, it's already a good compromise between the readability and
> the efficiency.

Thanks!

> A slight uncertain implementation is the timer tread stuff, especially
> the conditional definition of SNDRV_TIMER_IOCTL_TREAD (IIRC, I already
> complained it in the past, too).  But I have no other idea as well, so
> unless someone else gives a better option, we can live with that.

We had discussed alternatives for this one last time, and decided
to go with the solution I posted here. The main alternative would
be to change the 'timespec' in snd_timer_tread to a fixed-length
structure based on two 'long' members. This would avoid the
need to match the command with the time_t type, but the cost would
be requiring CLOCK_MONOTONIC timestamps to avoid the
overflow, and changing all application source code that requires
the type to be compatible with 'timespec'.

     Arnd

  reply	other threads:[~2019-11-13 14:33 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-12 15:16 [PATCH v6 0/8] Fix year 2038 issue for sound subsystem Arnd Bergmann
2019-11-12 15:16 ` [PATCH v6 1/8] ALSA: Replace timespec with timespec64 Arnd Bergmann
2019-11-12 15:16 ` [PATCH v6 2/8] ALSA: Avoid using timespec for struct snd_timer_status Arnd Bergmann
2019-11-12 15:42   ` Takashi Iwai
2019-11-12 20:08     ` Arnd Bergmann
2019-11-12 20:28       ` Takashi Iwai
2019-11-13 15:09         ` Arnd Bergmann
2019-11-12 15:16 ` [PATCH v6 3/8] ALSA: Avoid using timespec for struct snd_ctl_elem_value Arnd Bergmann
2019-11-12 15:16 ` [PATCH v6 4/8] ALSA: Avoid using timespec for struct snd_pcm_status Arnd Bergmann
2019-11-12 15:16 ` [PATCH v6 5/8] ALSA: Avoid using timespec for struct snd_rawmidi_status Arnd Bergmann
2019-11-12 16:38   ` [alsa-devel] " Takashi Iwai
2019-11-12 20:04     ` Arnd Bergmann
2019-11-12 20:26       ` Takashi Iwai
2019-11-13 15:16         ` Arnd Bergmann
2019-11-12 15:16 ` [PATCH v6 6/8] ALSA: Avoid using timespec for struct snd_timer_tread Arnd Bergmann
2019-11-12 15:16 ` [PATCH v6 7/8] ALSA: move snd_pcm_ioctl_sync_ptr_compat into pcm_native.c Arnd Bergmann
2019-11-12 15:16 ` [PATCH v6 8/8] ALSA: add new 32-bit layout for snd_pcm_mmap_status/control Arnd Bergmann
2019-11-15 15:24   ` Arnd Bergmann
2019-11-12 20:37 ` [PATCH v6 0/8] Fix year 2038 issue for sound subsystem Takashi Iwai
2019-11-13 14:32   ` Arnd Bergmann [this message]
2019-11-13 16:40     ` Takashi Iwai
2019-11-13 16:51       ` Arnd Bergmann
2019-11-13 17:04         ` Takashi Iwai
2019-11-13 17:19           ` Arnd Bergmann
2019-11-13 18:13             ` Takashi Iwai
2019-11-13 20:48               ` Arnd Bergmann

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=CAK8P3a2TMEUhzxH7RKvAW9STk33KrbCriUaQawOMffoFC6UTQw@mail.gmail.com \
    --to=arnd@arndb.de \
    --cc=alsa-devel@alsa-project.org \
    --cc=baolin.wang7@gmail.com \
    --cc=broonie@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=perex@perex.cz \
    --cc=tiwai@suse.com \
    --cc=tiwai@suse.de \
    --cc=y2038@lists.linaro.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;
as well as URLs for NNTP newsgroup(s).