]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
network: Only bring up wired network interfaces 266/head
authorJavier Martinez Canillas <javierm@redhat.com>
Wed, 9 Aug 2017 16:50:44 +0000 (18:50 +0200)
committerJavier Martinez Canillas <javierm@redhat.com>
Wed, 9 Aug 2017 17:10:42 +0000 (19:10 +0200)
The dracut network module is only supposed to be used for wired interfaces
but if driver modules for wireless devices are wrongly copied, these will
be loaded and the available interfaces brought up.

If the rd.neednet=1 command line parameter is used, dhclient will attempt
to request an IP address for the interfaces and these requests will fail.

But other dracut modules that depend on the network to be settled, will
have to wait for the DHCP requests to timeout. Which can be a lot of time
since the dhclient default timeout value is 60 seconds.

Instead of trying to blacklist all possible kernel modules for wireless
devices, only bring up network interfaces if these are for wired devices.

Suggested-by: Harald Hoyer <harald@redhat.com>
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
modules.d/40network/net-genrules.sh

index f0cfa57b9f2f3c18298ab5413b7486c126b6b40c..5ba08825b3715a59649716fd6385604c2397a9cf 100755 (executable)
@@ -102,7 +102,7 @@ command -v fix_bootif >/dev/null || . /lib/net-lib.sh
     # Default: We don't know the interface to use, handle all
     # Fixme: waiting for the interface as well.
     else
-        cond='ACTION=="add", SUBSYSTEM=="net"'
+        cond='ACTION=="add", SUBSYSTEM=="net", ENV{DEVTYPE}!="wlan|wwan"'
         # if you change the name of "91-default-net.rules", also change modules.d/80cms/cmssetup.sh
         echo "$cond, $runcmd" > /etc/udev/rules.d/91-default-net.rules
     fi