From: Ben Hutchings <ben.hutchings@codethink.co.uk>
To: Deepa Dinamani <deepa.kernel@gmail.com>,
dmitry.torokhov@gmail.com, linux-input@vger.kernel.org,
linux-kernel@vger.kernel.org
Cc: y2038@lists.linaro.org, peter.hutterer@who-t.net, arnd@arndb.de
Subject: Re: [Y2038] [PATCH v4 4/4] input: serio: Replace timeval by timespec64
Date: Thu, 14 Dec 2017 21:45:28 +0000 [thread overview]
Message-ID: <1513287928.18523.283.camel@codethink.co.uk> (raw)
In-Reply-To: <20171207181306.5623-5-deepa.kernel@gmail.com>
On Thu, 2017-12-07 at 10:13 -0800, Deepa Dinamani wrote:
> struct timeval is not y2038 safe.
> All references to timeval will be deleted from the
> kernel to make it y2038 safe.
> Replace its uses by y2038 safe struct timespec64.
>
> The timestamps changed here only keep track of delta
> times. These timestamps are also internal to kernel.
> Hence, monotonic times are sufficient here.
> The unit of the delta times is also changed in certain
> cases to nanoseconds rather than microseconds. This is
> in line with timespec64 which keeps time in nanoseconds.
[...]
> --- a/drivers/input/serio/hil_mlc.c
> +++ b/drivers/input/serio/hil_mlc.c
[...]
> @@ -466,7 +466,7 @@ static const struct hilse_node hil_mlc_se[HILSEN_END] = {
> FUNC(hilse_init_lcv, 0, HILSEN_NEXT, HILSEN_SLEEP, 0)
>
> /* 1 HILSEN_RESTART */
> - FUNC(hilse_inc_lcv, 10, HILSEN_NEXT, HILSEN_START, 0)
> + FUNC(hilse_inc_lcv, 10000, HILSEN_NEXT, HILSEN_START, 0)
[...]
The second macro argument here ends up as the second argument to
hilse_inc_lcv() which appears to limit the number of retries, not a
time limit. So I don't think the value here (or wherever else
hilse_inc_lcv is referenced) should be changed.
The EXPECT, EXPECT_LAST etc. macros take a timeout ('to' parameter)
which is then assigned to hil_mlc::intimeout, so it seems that those
*should* be scaled up, but this patch doesn't do that. It also doesn't
change the type of hil_mlc::intimeout (suseconds_t implying units of
microseconds) or the comment on hilse_node::arg.
Alternately, it might be safer to keep all the timeouts in units of
microseconds.
Ben.
--
Ben Hutchings
Software Developer, Codethink Ltd.
next prev parent reply other threads:[~2017-12-14 21:45 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-07 18:13 [PATCH v4 0/4] Make input drivers y2038 safe Deepa Dinamani
2017-12-07 18:13 ` [PATCH v4 1/4] uinput: Use monotonic times for uinput timestamps Deepa Dinamani
2017-12-07 22:24 ` Arnd Bergmann
2017-12-14 21:17 ` [Y2038] " Ben Hutchings
2017-12-14 21:18 ` Ben Hutchings
2017-12-14 21:44 ` Deepa Dinamani
2017-12-14 21:53 ` Ben Hutchings
2017-12-14 22:07 ` Deepa Dinamani
2017-12-07 18:13 ` [PATCH v4 2/4] input: evdev: Replace timeval with timespec64 Deepa Dinamani
2017-12-07 18:13 ` [PATCH v4 3/4] input: Deprecate real timestamps beyond year 2106 Deepa Dinamani
2017-12-07 18:13 ` [PATCH v4 4/4] input: serio: Replace timeval by timespec64 Deepa Dinamani
2017-12-14 21:45 ` Ben Hutchings [this message]
2017-12-16 21:37 ` [Y2038] " Deepa Dinamani
2017-12-14 5:33 ` [PATCH v4 0/4] Make input drivers y2038 safe Peter Hutterer
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=1513287928.18523.283.camel@codethink.co.uk \
--to=ben.hutchings@codethink.co.uk \
--cc=arnd@arndb.de \
--cc=deepa.kernel@gmail.com \
--cc=dmitry.torokhov@gmail.com \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=peter.hutterer@who-t.net \
--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