Input: fix EVIOCGNAME/JSIOCGNAME regression
Commit 3d5cb60e
("Input: simplify name handling for certain input
handles") introduced a regression for the EVIOCGNAME/JSIOCGNAME
ioctl.
Before this, patch, the platform device's name was given back to
userspace which was good to identify devices. After this patch, the
device is ("event%d", minor) which is not descriptive at all.
This fixes the behaviour by taking dev->name.
Reported-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Daniel Mack <daniel@caiaq.de>
Reviewed-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
This commit is contained in:
parent
f0a14de2f8
commit
f936601471
2 changed files with 2 additions and 3 deletions
|
@ -608,8 +608,7 @@ static long evdev_do_ioctl(struct file *file, unsigned int cmd,
|
||||||
p, compat_mode);
|
p, compat_mode);
|
||||||
|
|
||||||
if (_IOC_NR(cmd) == _IOC_NR(EVIOCGNAME(0)))
|
if (_IOC_NR(cmd) == _IOC_NR(EVIOCGNAME(0)))
|
||||||
return str_to_user(dev_name(&evdev->dev),
|
return str_to_user(dev->name, _IOC_SIZE(cmd), p);
|
||||||
_IOC_SIZE(cmd), p);
|
|
||||||
|
|
||||||
if (_IOC_NR(cmd) == _IOC_NR(EVIOCGPHYS(0)))
|
if (_IOC_NR(cmd) == _IOC_NR(EVIOCGPHYS(0)))
|
||||||
return str_to_user(dev->phys, _IOC_SIZE(cmd), p);
|
return str_to_user(dev->phys, _IOC_SIZE(cmd), p);
|
||||||
|
|
|
@ -536,7 +536,7 @@ static int joydev_ioctl_common(struct joydev *joydev,
|
||||||
default:
|
default:
|
||||||
if ((cmd & ~IOCSIZE_MASK) == JSIOCGNAME(0)) {
|
if ((cmd & ~IOCSIZE_MASK) == JSIOCGNAME(0)) {
|
||||||
int len;
|
int len;
|
||||||
const char *name = dev_name(&dev->dev);
|
const char *name = dev->name;
|
||||||
|
|
||||||
if (!name)
|
if (!name)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in a new issue