Subject: [PATCH] hid2hci: Fix udev rules for linux-4.14+
From: Ville Syrjälä <[email-masked]>
Date: Tue, 4 Dec 2018 22:41:17 +0200

Since commit 1455cf8dbfd0 ("driver core: emit uevents when
device is bound to a driver") the kernel started emitting
"bind" and "unbind" uevents which confuse the hid2hci
udev rules.

The symptoms on an affected machine (Dell E5400 in my case)
include bluetooth devices not appearing and udev hogging
the cpu as it's busy processing a constant stream of these
"bind"+"unbind" uevents.

Change the udev rules not do anything except for "add" and
"change" events. This seems to cure my machine at least.

v2: Don't mess up "change" (Zbyszek)
    Fix up the commit message a bit

Closes: #931304
Origin: upstream, https://lore.kernel.org/patchwork/patch/1021109/
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=931304
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1759836
---
 tools/hid2hci.rules | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/hid2hci.rules b/tools/hid2hci.rules
index 3a315b6..6314366 100644
--- a/tools/hid2hci.rules
+++ b/tools/hid2hci.rules
@@ -1,6 +1,6 @@
 # do not edit this file, it will be overwritten on update
 
-ACTION=="remove", GOTO="hid2hci_end"
+ACTION!="add|change", GOTO="hid2hci_end"
 SUBSYSTEM!="usb*", GOTO="hid2hci_end"
 
 # Variety of Dell Bluetooth devices - match on a mouse device that is