Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S935546AbcJ0CY1 (ORCPT ); Wed, 26 Oct 2016 22:24:27 -0400 Received: from mail-pf0-f193.google.com ([209.85.192.193]:33622 "EHLO mail-pf0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932239AbcJ0CYY (ORCPT ); Wed, 26 Oct 2016 22:24:24 -0400 Date: Wed, 26 Oct 2016 19:24:20 -0700 From: Dmitry Torokhov To: Deepa Dinamani Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, arnd@arndb.de, y2038@lists.linaro.org, Peter Hutterer , Benjamin Tissoires , Jiri Kosina , Hans de Goede Subject: Re: [PATCH v2 3/4] input: Deprecate real timestamps beyond year 2106 Message-ID: <20161027022420.GC31660@dtor-ws> References: <1476761253-13450-1-git-send-email-deepa.kernel@gmail.com> <1476761253-13450-4-git-send-email-deepa.kernel@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1476761253-13450-4-git-send-email-deepa.kernel@gmail.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1563 Lines: 39 Hi Deepa, On Mon, Oct 17, 2016 at 08:27:32PM -0700, Deepa Dinamani wrote: > struct timeval is not y2038 safe. > All usage of timeval in the kernel will be replaced by > y2038 safe structures. > > struct input_event maintains time for each input event. > Real time timestamps are not ideal for input as this > time can go backwards as noted in the patch a80b83b7b8 > by John Stultz. Hence, having the input_event.time fields > only big enough for monotonic and boot times are > sufficient. > > Leave the original input_event as is. This is to maintain > backward compatibility with existing userspace interfaces > that use input_event. > Introduce a new replacement struct raw_input_event. > This replaces timeval with struct input_timeval. This structure > maintains time in __kernel_ulong_t or compat_ulong_t to allow > for architectures to override types as in the case of x32. > > The change requires any userspace utilities reading or writing > from event nodes to update their reading format to match > raw_input_event. The changes to the popular libraries will be > posted along with the kernel changes. > The driver version is also updated to reflect the change in > event format. If users are forced to update to adapt to the new event format, should we consider more radical changes? For example, does it make sense to send timestamp on every event? Maybe we should only send it once per event packet (between EV_SYN/SYN_REPORT)? What granularity do we need? Is there anything else in current protocol that we'd like to change? Thanks. -- Dmitry