[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <DDC9234F-F89D-4112-BD68-FC6EFEC7E215@linaro.org>
Date: Sun, 29 Nov 2015 17:13:50 +0800
From: Pingbo Wen <pingbo.wen@...aro.org>
To: Arnd Bergmann <arnd@...db.de>
Cc: Pingbo Wen <pingbo.wen@...aro.org>, y2038@...ts.linaro.org,
dmitry.torokhov@...il.com, aksgarg1989@...il.com,
linux-input@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-api@...r.kernel.org
Subject: Re: [PATCH 0/3] introduce new evdev interface type
Hi, Arnd
> 在 2015年11月28日,00:58,Arnd Bergmann <arnd@...db.de> 写道:
>
> On Friday 27 November 2015 18:00:29 WEN Pingbo wrote:
>> To solve the y2038 problem in input_event, I had some attempts before [1],
>> and this is the second one.
>>
>> We can force userspace to use monotonic time in event timestamp, so the
>> 'struct timeval' is enough to keep y2038-safe, as Arnd suggested. But we
>> can not find a way to make kernel compatible with old binaries, which use
>> realtime, and there are still some devices, which depend on realtime.
>>
>> So I get a idea to add a new evdev interface, which is y2038 safe. And
>> userspace can switch between the old and new interface via ioctl.
>>
>> The patch series add three evdev interface type:
>>
>> - EV_IF_LEGACY
>> send event by input_event. This is the default option, keep kernel
>> backward compatible.
>
> The problem I see with this approach is that it still breaks any
> legacy source code that is compiled with a new libc that uses 64-bit
> time_t. If we are requiring source code changes for building users
> of input devices with a new libc, we can easily get them to handle
> the overflow (they normally only care about the microsecond portion
> anyway, so it doesn't matter in most cases), or to use monotonic time.
I don’t think so.
Actually, from the view of userspace, EV_IF_LEGACY interface is work
exactly the same as old evdev. We didn’t change anything in input_event
and input_event_compat. And the problem you said will still be there,
even without those patches.
Pingbo--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists