From: Peter Hutterer <peter.hutterer-Pf4JEFdB4epeoWH0uzbU5w@public.gmane.org>
To: Dmitry Torokhov
<dmitry.torokhov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: Bastien Nocera <hadess-0MeiytkfxGOsTnJN9+BGXg@public.gmane.org>,
Matthew Garrett <mjg59-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org>,
Christian Lamparter
<chunkeey-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>,
johannes-cdvu00un1VgdHxzADdlk8Q@public.gmane.org,
linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-input-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
marcel-kz+m5ild9QBg9hUCZPvPmw@public.gmane.org
Subject: Re: [PATCH 1/2] input: Add KEY_RFKILL
Date: Thu, 18 Feb 2010 14:29:58 +1000 [thread overview]
Message-ID: <20100218042958.GA19756@barra.bne.redhat.com> (raw)
In-Reply-To: <20100218041636.GA19037-WlK9ik9hQGAhIp7JRqBPierSzoNAToWh@public.gmane.org>
On Wed, Feb 17, 2010 at 08:16:37PM -0800, Dmitry Torokhov wrote:
> On Thu, Feb 18, 2010 at 08:34:50AM +1000, Peter Hutterer wrote:
> > On Wed, Feb 17, 2010 at 06:49:35PM +0000, Bastien Nocera wrote:
> > > On Wed, 2010-02-17 at 18:45 +0000, Matthew Garrett wrote:
> > > > On Wed, Feb 17, 2010 at 07:43:56PM +0100, Christian Lamparter wrote:
> > > >
> > > > > Wait wait... do you can get another KEY_?
> > > > >
> > > > > The reason: Some new devices come with a WPS "Push Button".
> > > > > And there's no code for them yet.
> > > >
> > > > What's a WPS button? There's no fundamental issue with getting new KEY_
> > > > codes defined, but bear in mind that anything greater than 255 won't be
> > > > seen by X at present.
> > >
> > > Won't be seen by most X applications. The server should definitely see
> > > it, so should applications that use XInput2-aware widget sets.
> > >
> > > (Which obviously means not much at all right now).
> >
> > Because XKB2 never happened we don't actually have any way of configuring
> > keysyms in the server for keys > 255 or getting this layout information to
> > the client. So XI2 applications that want to use higher keycodes are reliant
> > on the keycode itself which is strictly speaking random - at least the
> > protocol makes no guarantee that they remain fixed.
> >
> > In practice that's not quite true and the keycodes are likely to remain
> > fixed but relying on that hurt us quite badly in the keyboard -> evdev
> > conversion.
> >
>
> FWIW the event codes defines in linux/input.h form ABI and thus will not
> be changed (exception is adding aliases better describing intended key
> usage, such as KEY_COFFEE -> KEY_SCREENLOCK).
of course. the problem that would arise is that if a driver starts using a
different source for keycodes - such as happend when we changed from the old
keyboard driver to evdev. for years the keycodes remained the same and
applications relied on them. when we then started using evdev as the
keyboard driver a number of keycodes changed and some apps misbehaved.
(you may remember the Up/PrintScreen issues).
It is in fact still somewhat of an issue if you're using evdev and the kbd
driver at the same time - though the sensible use-cases for this scenario
are somewhat narrow.
Relying on keycodes - even if they're abi - is generally dangerous as it
circumvents the keyboard layouts configured by the users. After some talks
to our input methods guys it was shown that some input methods only work on
a qwerty layout but break rather badly on a azerty layout. And an anecdote
from our office - a password generator dongle started typing in wrong
passwords when it was accidentally configured with dvorak instead of qwerty.
Since the dongle could only send keycodes - which were then converted into
the keysyms depending on the layout - some of the passwords didn't match up
anymore.
So - for client applications to rely on keycodes is a time-bomb, we really
need to get our act together and allow for 32-bit keycode layout
configuration in X.
Cheers,
Peter
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2010-02-18 4:29 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-16 21:36 [PATCH 1/2] input: Add KEY_RFKILL Matthew Garrett
[not found] ` <1266356185-10324-1-git-send-email-mjg-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-02-16 21:36 ` [PATCH 2/2] rfkill: Add support for KEY_RFKILL Matthew Garrett
2010-02-16 23:04 ` Marcel Holtmann
2010-02-16 23:05 ` [PATCH 1/2] input: Add KEY_RFKILL Marcel Holtmann
2010-02-17 5:22 ` Dmitry Torokhov
[not found] ` <20100217052247.GD7160-WlK9ik9hQGAhIp7JRqBPierSzoNAToWh@public.gmane.org>
2010-02-17 18:03 ` Matthew Garrett
2010-02-17 18:43 ` Christian Lamparter
[not found] ` <22ee4e771002171043u2aaf97vd73c1090c2fce901-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-02-17 18:45 ` Matthew Garrett
2010-02-17 18:49 ` Bastien Nocera
[not found] ` <1266432575.678.980.camel-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2010-02-17 22:34 ` Peter Hutterer
2010-02-18 4:16 ` Dmitry Torokhov
[not found] ` <20100218041636.GA19037-WlK9ik9hQGAhIp7JRqBPierSzoNAToWh@public.gmane.org>
2010-02-18 4:29 ` Peter Hutterer [this message]
2010-02-17 19:18 ` Christian Lamparter
2010-02-17 19:17 ` Dmitry Torokhov
[not found] ` <20100217191708.GA15554-WlK9ik9hQGAhIp7JRqBPierSzoNAToWh@public.gmane.org>
2010-02-17 19:42 ` Christian Lamparter
2010-02-17 19:54 ` Dmitry Torokhov
2010-02-17 20:02 ` Matthew Garrett
2010-02-17 20:49 ` Dmitry Torokhov
[not found] ` <446821D4-8E9D-4701-9A50-04738C5733B6-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-02-17 20:50 ` Matthew Garrett
2010-02-17 20:18 ` Christian Lamparter
[not found] ` <22ee4e771002171218t69cc4348ia0300a645ce9763d-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-02-17 20:52 ` Dmitry Torokhov
[not found] ` <069C4DAE-598D-45F1-99B5-DA5BAF718179-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-02-17 21:12 ` pat-lkml-Jx9fsTfDDR3YtjvyW6yDsg
2010-02-17 21:28 ` Christian Lamparter
[not found] ` <22ee4e771002171328w3c9cbb8n663c291e9d3634e5-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-02-17 21:40 ` Dmitry Torokhov
2010-02-17 22:03 ` Christian Lamparter
[not found] ` <22ee4e771002171403o6f0b99e8qd683d78e74fe4522-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-02-20 9:18 ` Dmitry Torokhov
2010-02-19 14:33 ` Henrique de Moraes Holschuh
2010-02-17 19:18 ` Dmitry Torokhov
-- strict thread matches above, loose matches on Subject: below --
2009-09-10 17:21 Matthew Garrett
[not found] ` <1252603292-20830-1-git-send-email-mjg-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2009-09-10 17:27 ` Luis R. Rodriguez
[not found] ` <43e72e890909101027saf1ed35u23936729eccf3f92-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-09-10 17:31 ` Matthew Garrett
2009-09-11 5:13 ` Dmitry Torokhov
[not found] ` <20090911051259.GC23210-WlK9ik9hQGAhIp7JRqBPierSzoNAToWh@public.gmane.org>
2009-11-13 5:34 ` Marcel Holtmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100218042958.GA19756@barra.bne.redhat.com \
--to=peter.hutterer-pf4jefdb4epeowh0uzbu5w@public.gmane.org \
--cc=chunkeey-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org \
--cc=dmitry.torokhov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=hadess-0MeiytkfxGOsTnJN9+BGXg@public.gmane.org \
--cc=johannes-cdvu00un1VgdHxzADdlk8Q@public.gmane.org \
--cc=linux-input-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=marcel-kz+m5ild9QBg9hUCZPvPmw@public.gmane.org \
--cc=mjg59-1xO5oi07KQx4cg9Nei1l7Q@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).