lkml.org 
[lkml]   [2010]   [Dec]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC] Input: define separate EVIOCGKEYCODE_V2/EVIOCSKEYCODE_V2
On Thu, Dec 09, 2010 at 08:04:36PM +0100, Henrik Rydberg wrote:
> On 12/09/2010 10:39 AM, Dmitry Torokhov wrote:
>
> > The desire to keep old names for the EVIOCGKEYCODE/EVIOCSKEYCODE while
> > extending them to support large scancodes was a mistake. While we tried
> > to keep ABI intact (and we succeeded in doing that, programs compiled
> > on older kernels will work on newer ones) there is still a problem with
> > recompiling existing software with newer kernel headers.
> >
> > New kernel headers will supply updated ioctl numbers and kernel will
> > expect that userspace will use struct input_keymap_entry to set and
> > retrieve keymap data. But since the names of ioctls are still the same
> > userspace will happily compile even if not adjusted to make use of the
> > new structure and will start miraculously fail in the field.
> >
> > To avoid this issue let's revert EVIOCGKEYCODE/EVIOCSKEYCODE definitions
> > and add EVIOCGKEYCODE_V2/EVIOCSKEYCODE_V2 so that userspace can explicitly
> > select the style of ioctls it wants to employ.
> >
> > Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
> > ---
>
>
> Would the header change suffice in itself?

We still need to change evdev to return -EINVAL on wrong sizes but yes,
the amount of change there could be more limited. I just thought that
splitting it up explicitly shows the differences in handling better. If
people prefer the previos version we could leave it, I am 50/50 between
them.

> Either way, also checked that the
> bugfixes following the original patch is still in effect, so looks ok to me.

Thanks.

--
Dmitry


\
 
 \ /
  Last update: 2010-12-09 20:19    [W:0.061 / U:0.032 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site