diff options
author | Olaf Kirch <olaf.kirch@oracle.com> | 2007-04-13 01:18:44 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-04-13 21:35:39 -0400 |
commit | d791d413fd8527aa6b130882cc84d52aee0fe980 (patch) | |
tree | d8f995c8a1bb51842cd4d7e7c11992498e576a8c /drivers/media/dvb/dvb-usb/dvb-usb-remote.c | |
parent | b1847a041aba157bdf1643bd151e98dc44366b1c (diff) |
DVB: dvb-usb-remote - fix oops when changing keymap
DVB USB remotes do not support changing keycode maps but set
input_dev->keycodesize and input_dev->keycodemax without setting
input_dev->keycode. This causes kernel oops when user tries to
look up (or change) current keymap.
While the proper fix would be to make remotes handle keymap changes
we'll just remove keycodemax and keycodesize initialization so
EVIOCGKEYCODE and EVIOCSKEYCODE will simply return -EINVAL.
http://bugzilla.kernel.org/show_bug.cgi?id=8312
Signed-off-by: olaf.kirch@oracle.com
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/media/dvb/dvb-usb/dvb-usb-remote.c')
-rw-r--r-- | drivers/media/dvb/dvb-usb/dvb-usb-remote.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/media/dvb/dvb-usb/dvb-usb-remote.c b/drivers/media/dvb/dvb-usb/dvb-usb-remote.c index 9511a31c8f50..68ed3a788083 100644 --- a/drivers/media/dvb/dvb-usb/dvb-usb-remote.c +++ b/drivers/media/dvb/dvb-usb/dvb-usb-remote.c | |||
@@ -107,8 +107,6 @@ int dvb_usb_remote_init(struct dvb_usb_device *d) | |||
107 | return -ENOMEM; | 107 | return -ENOMEM; |
108 | 108 | ||
109 | input_dev->evbit[0] = BIT(EV_KEY); | 109 | input_dev->evbit[0] = BIT(EV_KEY); |
110 | input_dev->keycodesize = sizeof(unsigned char); | ||
111 | input_dev->keycodemax = KEY_MAX; | ||
112 | input_dev->name = "IR-receiver inside an USB DVB receiver"; | 110 | input_dev->name = "IR-receiver inside an USB DVB receiver"; |
113 | input_dev->phys = d->rc_phys; | 111 | input_dev->phys = d->rc_phys; |
114 | usb_to_input_id(d->udev, &input_dev->id); | 112 | usb_to_input_id(d->udev, &input_dev->id); |