[systemd-devel] Why udev rule triggered for USB mice but not bluetooth mice

Andrei Borzenkov arvidjaar at gmail.com
Mon Jan 2 05:50:32 UTC 2017


02.01.2017 07:14, Weiwu Zhang пишет:
> This is a user post cross-posted from
> https://ubuntuforums.org/showthread.php?t=2348023
> 
> Seems the question isn't mundane enough for Ubuntu forum - no one
> followed; so if I can get some clues from here I will cross post back
> the solution to Ubuntu Forums.
> 
> 
> The bluetooth mouse's information:
> 
> Code:
> $ udevadm info -a -p `udevadm info -q path /dev/input/mouse3`
> 
>   looking at device
> '/devices/virtual/misc/uhid/0005:17EF:6060.0005/input/input26/mouse3':
>     KERNEL=="mouse3"
>     SUBSYSTEM=="input"
>     DRIVER==""
> 
>   looking at parent device
> '/devices/virtual/misc/uhid/0005:17EF:6060.0005/input/input26':
>     KERNELS=="input26"
>     SUBSYSTEMS=="input"
>     DRIVERS==""
>     ATTRS{name}=="Lenovo Mice N700"
>     ATTRS{phys}=="B8:8A:60:56:E4:3C"
>     ATTRS{properties}=="0"
>     ATTRS{uniq}=="D5:94:54:38:3D:5D"
> 
>   looking at parent device '/devices/virtual/misc/uhid/0005:17EF:6060.0005':
>     KERNELS=="0005:17EF:6060.0005"
>     SUBSYSTEMS=="hid"
>     DRIVERS=="hid-generic"
>     ATTRS{country}=="00"
> 
>   looking at parent device '/devices/virtual/misc/uhid':
>     KERNELS=="uhid"
>     SUBSYSTEMS=="misc"
>     DRIVERS==""
> The udev rules I tried:
> 
> Code:
> 
> $ cat /etc/udev/rules.d/lenovo.rules
> KERNEL=="hidraw*", SUBSYSTEM=="hidraw",
> ATTRS{uniq}=="D5:94:54:38:3D:5D", SYMLINK+="N700"
> KERNEL=="hidraw*", SUBSYSTEM=="hidraw",
> ATTRS{address}=="d5:94:54:38:3d:5d", SYMLINK+="N700"
> SUBSYSTEM=="input", SUBSYSTEMS=="input", SUBSYSTEMS=="hid",
> ATTRS{name}=="Lenovo Mice N700", SYMLINK+="N700"
> 

All keys that match against parent nodes must match for the same parent
(this is even documented). Also I /think/ that in case of multiple
SUBSYSTEMS the last one wins. In this case your ATTRS{name} will match
one parent, and SUBSYSTEMS=="hid" - another. Try leaving only
SUBSYSTEMS=="input".




More information about the systemd-devel mailing list