Thread (16 messages) 16 messages, 3 authors, 2017-12-04

Re: [PATCH v3 1/4] uinput: Add ioctl for using monotonic/ boot times

From: Arnd Bergmann <arnd@arndb.de>
Date: 2017-12-04 14:21:59
Also in: lkml

On Mon, Dec 4, 2017 at 1:55 AM, Deepa Dinamani [off-list ref] wrote:
struct timeval which is part of struct input_event to
maintain the event times is not y2038 safe.

Real time timestamps are also not ideal for input_event
as this time can go backwards as noted in the patch
a80b83b7b8 by John Stultz.

Arnd Bergmann suggested deprecating real time and using
monotonic or other timers for all input_event times as a
solution to both the above problems.

Add a new ioctl to let the user dictate the kind of time
to be used for input events. This is similar to the evdev
implementation of the feature. Realtime is still the
default time. This is to maintain backward compatibility.

The structure to maintain input events will be changed
in a different patch.
Based on Peter's comment from when you first posted this,
https://patchwork.kernel.org/patch/9381209/, I tried to follow
the code path again, to see if we can come up with a way
to avoid introducing a new ioctl.

There is one idea I had now: The two events we
get (upload and erase) are both triggered from evdev,
which gets called from user space through the EVIOCSFF
and EVIOCRMFF ioctls. This device already sets the
clock domain. Would it make sense to send the event
to the uinput owner using the same clock domain that
was set by the evdev owner, or are these two separate
by definition?

       Arnd
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help