Input: Use monotonic time for event time stamps.
authorArve Hjønnevåg <arve@android.com>
Fri, 17 Oct 2008 22:28:08 +0000 (15:28 -0700)
committerColin Cross <ccross@android.com>
Thu, 30 Sep 2010 00:49:09 +0000 (17:49 -0700)
Since wall time can jump backwards, it cannot be used to determine if one
event occured before another or for how long a key was pressed.

Signed-off-by: Arve Hjønnevåg <arve@android.com>
drivers/input/evdev.c

index 98bb5be0a6d1fe4011a939e5492b253df4853d6e..3a24ed4424665a0f2ed9789e107ae8c6b63871e4 100644 (file)
@@ -81,8 +81,11 @@ static void evdev_event(struct input_handle *handle,
        struct evdev *evdev = handle->private;
        struct evdev_client *client;
        struct input_event event;
+       struct timespec ts;
 
-       do_gettimeofday(&event.time);
+       ktime_get_ts(&ts);
+       event.time.tv_sec = ts.tv_sec;
+       event.time.tv_usec = ts.tv_nsec / NSEC_PER_USEC;
        event.type = type;
        event.code = code;
        event.value = value;