summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBeniamino Galvani <bgalvani@redhat.com>2015-08-06 16:57:15 +0200
committerThomas Haller <thaller@redhat.com>2015-08-11 18:31:46 +0200
commit44fee0f6fff42773aa73a9a46220db697907751f (patch)
treeaf78d02d48c3525868a37d99d2e9a722dca07adc
parentab41c13b0611c6cc967b055d328637a143b5c59b (diff)
downloadNetworkManager-44fee0f6fff42773aa73a9a46220db697907751f.tar.gz
udev-rules: only invoke ethtool for existing interfaces
ethtool may cause the auto-loading of a kernel module for non-existing interface-names. Avoid that by checking whether such an interface exists. This is inherently racy.
-rw-r--r--data/85-nm-unmanaged.rules2
1 files changed, 1 insertions, 1 deletions
diff --git a/data/85-nm-unmanaged.rules b/data/85-nm-unmanaged.rules
index aefab5c461..f8d95097ff 100644
--- a/data/85-nm-unmanaged.rules
+++ b/data/85-nm-unmanaged.rules
@@ -6,7 +6,7 @@ SUBSYSTEM!="net", GOTO="nm_unmanaged_end"
# Determine ID_NET_DRIVER if there's no ID_NET_DRIVER or DRIVERS (old udev?)
ENV{ID_NET_DRIVER}=="?*", GOTO="nm_unmanaged_driver"
DRIVERS=="?*", GOTO="nm_unmanaged_driver"
-PROGRAM="/bin/sh -c '/usr/sbin/ethtool -i $env{INTERFACE} |/bin/sed -n s/^driver:\ //p'", RESULT=="?*", ENV{ID_NET_DRIVER}="%c"
+PROGRAM="/bin/sh -c 'test -e "/sys/class/net/$env{INTERFACE}" && /usr/sbin/ethtool -i "$env{INTERFACE}" | /bin/sed -n s/^driver:\ //p'", RESULT=="?*", ENV{ID_NET_DRIVER}="%c"
LABEL="nm_unmanaged_driver"
# VirtualBox host networking. Out-of-tree driver that looks like an ordinary