[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110125205453.GA19896@core.coreip.homeip.net>
Date: Tue, 25 Jan 2011 12:54:53 -0800
From: Dmitry Torokhov <dmitry.torokhov@...il.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Mauro Carvalho Chehab <mchehab@...hat.com>,
Mark Lord <kernel@...savvy.com>,
Linux Kernel <linux-kernel@...r.kernel.org>,
linux-input@...r.kernel.org, linux-media@...r.kernel.org
Subject: Re: 2.6.36/2.6.37: broken compatibility with userspace input-utils ?
On Wed, Jan 26, 2011 at 06:09:45AM +1000, Linus Torvalds wrote:
> On Wed, Jan 26, 2011 at 2:48 AM, Dmitry Torokhov
> <dmitry.torokhov@...il.com> wrote:
> >
> > We should be able to handle the case where scancode is valid even though
> > it might be unmapped yet. This is regardless of what version of
> > EVIOCGKEYCODE we use, 1 or 2, and whether it is sparse keymap or not.
> >
> > Is it possible to validate the scancode by driver?
>
> More appropriately, why not just revert the thing? The version change
Well, then we'll break Ubuntu again as they recompiled their input-utils
package (without fixing the check). And the rest of distros do not seem
to be using that package...
> and the buggy EINVAL return both.
I believe that -EINVAL thing only affects RC devices that Mauro switched
to the new rc-core; input core in itself should be ABI compatible. Thus
I'll leave the decision to him whether he wants to revert or fix
compatibility issue.
>
> As Mark said, breaking user space simply isn't acceptable. And since
> breaking user space isn't acceptable, then incrementing the version is
> stupid too.
It might not have been the best idea to increment, however I maintain
that if there exists version is can be changed. Otherwise there is no
point in having version at all.
As I said, reverting the version bump will cause yet another wave of
breakages so I propose leaving version as is.
>
> The way we add new ioctl's is not by incrementing some "ABI version"
> crap. It's by adding new ioctl's or system calls or whatever that
> simply used to return -ENOSYS or other error before, while preserving
> the old ABI. That way old binaries don't break (for _ANY_ reason), and
> new binaries can see "oh, this doesn't support the new thing".
That has been done as well; we have 2 new ioctls and kept 2 old ioctls.
--
Dmitry
--
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