reload_network_device: Add udev rule

Add a udev rule that triggers when a device requests userspace
to respond to a device hang.

BUG=chromium:348610
TEST=Use a variety of CL:187492 that can be triggered from userspace.

Change-Id: Idf34b2ad017619e1f84a6c7d56836c7c209b795b
Reviewed-on: https://chromium-review.googlesource.com/189147
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
diff --git a/udev/86-reload_network_device.rules b/udev/86-reload_network_device.rules
new file mode 100644
index 0000000..58a3f22
--- /dev/null
+++ b/udev/86-reload_network_device.rules
@@ -0,0 +1,3 @@
+# Reloads network device instance if it fails.
+SUBSYSTEM=="net", ACTION=="change", ENV{ID_BUS}=="pci", ENV{EVENT}=="device_hang", RUN+="/usr/sbin/reload_network_device"
+SUBSYSTEM=="net", ACTION=="change", ENV{ID_BUS}=="usb", ENV{EVENT}=="device_hang", RUN+="/usr/sbin/reload_network_device"