Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

network-legacy module seems to be broken in F31+ #732

Closed
mrc0mmand opened this issue Feb 22, 2020 · 8 comments
Closed

network-legacy module seems to be broken in F31+ #732

mrc0mmand opened this issue Feb 22, 2020 · 8 comments
Labels
bug Our bugs

Comments

@mrc0mmand
Copy link
Contributor

In attempt to make the dracut's test suite stable & working again, so it could be possibly extended to cover the IPv6 stack as well, I tried to debug the outstanding issues in #731 with following results:

@lnykryn @lkundrak it looks like there's something wrong with the network-legacy module, as the majority of network-related test fails was resolved by switching to NetworkManager (network-manager module). From what I could read from the failing logs, the initrd with legacy network scripts simply fails to obtain a DHCP lease, whereas with NetworkManager everything works as expected.

Locally (Fedora 31) in TEST-20-NFS I managed to reproduce this as follows:

  1. Legacy network scripts (network-legacy module)
diff --git a/test/TEST-20-NFS/test.sh b/test/TEST-20-NFS/test.sh
index 30237dd5..00fb8b6e 100755
--- a/test/TEST-20-NFS/test.sh
+++ b/test/TEST-20-NFS/test.sh
@@ -354,8 +354,8 @@ test_setup() {
 
     # Make client's dracut image
     $basedir/dracut.sh -l -i $TESTDIR/overlay / \
-        -o "plymouth dash" \
-        -a "debug watchdog" \
+        -o "plymouth dash network-manager" \
+        -a "debug watchdog network-legacy" \
         -d "af_packet piix ide-gd_mod ata_piix sd_mod e1000 nfs sunrpc i6300esb" \
         --no-hostonly-cmdline -N \
         -f $TESTDIR/initramfs.testing $KVERSION || return 1
# make -C test/TEST-20-NFS/ clean setup run
...
[   14.488962] dracut-initqueue[569]: /bin/dracut-initqueue@71(): emergency_shell 'Could not boot.'
[   14.489724] dracut-initqueue[569]: /lib/dracut-lib.sh@1125(emergency_shell): local _ctty
[   14.490436] dracut-initqueue[569]: /lib/dracut-lib.sh@1126(emergency_shell): set +e
[   14.491111] dracut-initqueue[569]: /lib/dracut-lib.sh@1127(emergency_shell): local _rdshell_name=dracut action=Boot hook=emergency
[   14.492033] dracut-initqueue[569]: /lib/dracut-lib.sh@1128(emergency_shell): local _emergency_action
[   14.492811] dracut-initqueue[569]: /lib/dracut-lib.sh@1130(emergency_shell): '[' 'Could not boot.' = -n ']'
[   14.493617] dracut-initqueue[569]: /lib/dracut-lib.sh@1133(emergency_shell): '[' 'Could not boot.' = --shutdown ']'
[   14.494572] dracut-initqueue[569]: /lib/dracut-lib.sh@1143(emergency_shell): echo
[   14.495403] dracut-initqueue[569]: /lib/dracut-lib.sh@1143(emergency_shell): echo[   14.554765] ACPI: Preparing to enter system sleep state S5
[   14.555314] reboot: Power down
CLIENT TEST END: NFSv3 root=dhcp DHCP path only [FAILED - BAD EXIT]
make: *** [../Makefile.testdir:12: run] Error 1
make: Leaving directory '/home/mrc0mmand/repos/dracut/test/TEST-20-NFS'
  1. NetworkManager (network-manager module)
diff --git a/test/TEST-20-NFS/test.sh b/test/TEST-20-NFS/test.sh
index 30237dd5..07ddb94e 100755
--- a/test/TEST-20-NFS/test.sh
+++ b/test/TEST-20-NFS/test.sh
@@ -354,8 +354,8 @@ test_setup() {
 
     # Make client's dracut image
     $basedir/dracut.sh -l -i $TESTDIR/overlay / \
-        -o "plymouth dash" \
-        -a "debug watchdog" \
+        -o "plymouth dash network-legacy" \
+        -a "debug watchdog network-manager" \
         -d "af_packet piix ide-gd_mod ata_piix sd_mod e1000 nfs sunrpc i6300esb" \
         --no-hostonly-cmdline -N \
         -f $TESTDIR/initramfs.testing $KVERSION || return 1
# make -C test/TEST-20-NFS/ clean setup run
...
CLIENT TEST END: NFSv4 root=dhcp DHCP proto:IP:path,options [OK]
make: Leaving directory '/home/mrc0mmand/repos/dracut/test/TEST-20-NFS'

As much as I'd like to stick with NM (where debug logs are actually useful), I suspect this should be looked into as well.

@mrc0mmand mrc0mmand added the bug Our bugs label Feb 22, 2020
@mrc0mmand
Copy link
Contributor Author

Also, when trying to bisect it I noticed (apart from that it's futile) that on F30 everything worked as expected, but started failing immediately after the Docker image was bumped to F31.

@mrc0mmand
Copy link
Contributor Author

mrc0mmand commented Feb 22, 2020

After comparing the results from F30 and F31 runs, there's something weird going on with the NIC naming:

F30 (passing)

[   23.608689] dracut-initqueue[537]: ++ hookdir=/lib/dracut/hooks
[   23.624890] dracut-initqueue[537]: ++ export hookdir
[   23.639152] dracut-initqueue[537]: ++ command -v findmnt
[   23.655233] dracut-initqueue[537]: ++ command -v pidof
[   23.668320] dracut-initqueue[537]: ++ setmemdebug
[   23.679630] dracut-initqueue[537]: ++ '[' -z 0 ']'
[   23.690673] dracut-initqueue[537]: + type ip_to_var
[   23.701600] dracut-initqueue[537]: + . /lib/net-lib.sh
[   23.714958] dracut-initqueue[537]: ++ type hostname
[   23.726419] dracut-initqueue[537]: + '[' -z ens3 ']'
[   23.739530] dracut-initqueue[537]: + netif=ens3
[   23.750502] dracut-initqueue[537]: + '[' ens3 = lo ']'
[   23.764053] dracut-initqueue[537]: + '[' -z '' ']'
[   23.776736] dracut-initqueue[537]: + '[' -e /tmp/vlan.ens3.phy ']'
[   23.792931] dracut-initqueue[537]: + '[' -e /tmp/vlan.ens3.phy ']'
[   23.813814] dracut-initqueue[537]: + for i in /tmp/vlan.${netif}.*
[   23.831302] dracut-initqueue[537]: + '[' -e '/tmp/vlan.ens3.*' ']'
[   23.846332] dracut-initqueue[537]: + continue
[   23.858717] dracut-initqueue[537]: + '[' -z '' ']'
[   23.874615] dracut-initqueue[537]: + for i in /tmp/bridge.*.info
[   23.888300] dracut-initqueue[537]: + '[' -e '/tmp/bridge.*.info' ']'
[   23.898861] dracut-initqueue[537]: + continue
[   23.908721] dracut-initqueue[537]: + '[' -z '' ']'
[   23.918194] dracut-initqueue[537]: + for i in /tmp/bond.*.info
[   23.931421] dracut-initqueue[537]: + '[' -e '/tmp/bond.*.info' ']'
[   23.953362] dracut-initqueue[537]: + continue
[   23.967146] dracut-initqueue[537]: + '[' -z '' ']'
[   23.981879] dracut-initqueue[537]: + for i in /tmp/team.*.info
[   23.999722] dracut-initqueue[537]: + '[' -e '/tmp/team.*.info' ']'
[   24.016157] dracut-initqueue[537]: + continue
[   24.030598] dracut-initqueue[537]: + ip link show dev ens3
[   24.047171] dracut-initqueue[537]: + '[' -n '' -a '' = -m ']'
[   24.063240] dracut-initqueue[537]: + '[' -n '' ']'
[   24.077323] dracut-initqueue[537]: + '[' -e /tmp/net.ens3.did-setup ']'
[   24.096583] dracut-initqueue[537]: + '[' -z '' ']'
[   24.111238] dracut-initqueue[537]: + '[' -e /sys/class/net/ens3/address ']'
...

F31 (failing)

[   11.397679] dracut-initqueue[532]: ++ hookdir=/lib/dracut/hooks
[   11.402324] dracut-initqueue[532]: ++ export hookdir
[   11.406927] dracut-initqueue[532]: ++ command -v findmnt
[   11.411132] dracut-initqueue[532]: ++ command -v pidof
[   11.419318] dracut-initqueue[532]: ++ setmemdebug
[   11.423640] dracut-initqueue[532]: ++ '[' -z 0 ']'
[   11.428645] dracut-initqueue[532]: + type ip_to_var
[   11.432459] dracut-initqueue[532]: + . /lib/net-lib.sh
[   11.436728] dracut-initqueue[532]: ++ type hostname
[   11.443669] dracut-initqueue[532]: + '[' -z eth0 ']'
[   11.448003] dracut-initqueue[532]: + netif=eth0
[   11.451700] dracut-initqueue[532]: + '[' eth0 = lo ']'
[   11.455987] dracut-initqueue[532]: + '[' -z '' ']'
[   11.460054] dracut-initqueue[532]: + '[' -e /tmp/vlan.eth0.phy ']'
[   11.465024] dracut-initqueue[532]: + '[' -e /tmp/vlan.eth0.phy ']'
[   11.470025] dracut-initqueue[532]: + for i in /tmp/vlan.${netif}.*
[   11.475102] dracut-initqueue[532]: + '[' -e '/tmp/vlan.eth0.*' ']'
[   11.480044] dracut-initqueue[532]: + continue
[   11.483906] dracut-initqueue[532]: + '[' -z '' ']'
[   11.487675] dracut-initqueue[532]: + for i in /tmp/bridge.*.info
[   11.492690] dracut-initqueue[532]: + '[' -e '/tmp/bridge.*.info' ']'
[   11.497898] dracut-initqueue[532]: + continue
[   11.501629] dracut-initqueue[532]: + '[' -z '' ']'
[   11.505653] dracut-initqueue[532]: + for i in /tmp/bond.*.info
[   11.510286] dracut-initqueue[532]: + '[' -e '/tmp/bond.*.info' ']'
[   11.515577] dracut-initqueue[532]: + continue
[   11.519125] dracut-initqueue[532]: + '[' -z '' ']'
[   11.522937] dracut-initqueue[532]: + for i in /tmp/team.*.info
[   11.527664] dracut-initqueue[532]: + '[' -e '/tmp/team.*.info' ']'
[   11.532798] dracut-initqueue[532]: + continue
[   11.536526] dracut-initqueue[532]: + ip link show dev eth0
[   11.541153] dracut-initqueue[532]: + exit 1

Notice that on F31 "dracut" tries to use eth0 NIC even though it doesn't exist, which can be confirmed by dropping into the emergency shell on the failing machine:

sh-5.0# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 52:54:00:12:34:00 brd ff:ff:ff:ff:ff:ff

This could, theoretically, be a race condition, according to the logs from the same F31 machine:

Feb 22 20:33:17 localhost systemd-udevd[516]: Using default interface naming scheme 'v243'.
Feb 22 20:33:17 localhost kernel: e1000 0000:00:03.0 eth0: (PCI:33MHz:32-bit) 52:54:00:12:34:00
Feb 22 20:33:17 localhost kernel: e1000 0000:00:03.0 eth0: Intel(R) PRO/1000 Network Connection
Feb 22 20:33:17 localhost systemd-udevd[516]: ethtool: autonegotiation is unset or enabled, the speed and duplex are not writable.
Feb 22 20:33:17 localhost kernel: e1000 0000:00:03.0 ens3: renamed from eth0

@mrc0mmand
Copy link
Contributor Author

Running the VM with rd.udev.log_priority=debug yields following:

# journalctl --no-pager | grep -E "eth0|ens3"
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Device (SEQNUM=1668, ACTION=add) is queued
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: sd-device-monitor: Passed 177 byte to netlink monitor
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Processing device (SEQNUM=1668, ACTION=add)
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: /usr/lib/udev/rules.d/75-net-description.rules:6 Importing properties from results of builtin command 'net_id'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: /usr/lib/udev/rules.d/75-net-description.rules:12 Importing properties from results of builtin command 'hwdb --subsystem=pci'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: /usr/lib/udev/rules.d/75-net-description.rules:12 Failed to run builtin 'hwdb --subsystem=pci': Invalid argument
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: /usr/lib/udev/rules.d/80-net-setup-link.rules:5 Importing properties from results of builtin command 'path_id'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: /usr/lib/udev/rules.d/80-net-setup-link.rules:9 Importing properties from results of builtin command 'net_setup_link'
Feb 22 21:42:32 localhost kernel: e1000 0000:00:03.0 eth0: (PCI:33MHz:32-bit) 52:54:00:12:34:00
Feb 22 21:42:32 localhost kernel: e1000 0000:00:03.0 eth0: Intel(R) PRO/1000 Network Connection
Feb 22 21:42:32 localhost kernel: e1000 0000:00:03.0 ens3: renamed from eth0
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Config file /etc/systemd/network/99-default.link is applied
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Failed to query name_assign_type: Invalid argument
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Policy *slot* yields "ens3".
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Device has addr_assign_type=0
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: MAC on the device already matches policy *persistent*
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: /usr/lib/udev/rules.d/80-net-setup-link.rules:11 NAME 'ens3'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: /etc/udev/rules.d/91-default-net.rules:1 RUN '/sbin/initqueue --name ifup-$env{INTERFACE} --unique --onetime /sbin/ifup $env{INTERFACE}'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: /usr/lib/udev/rules.d/99-systemd.rules:62 RUN '/usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/$name --prefix=/net/ipv4/neigh/$name --prefix=/net/ip'
Feb 22 21:42:32 localhost systemd-udevd[440]: ens3: Device (SEQNUM=1673, ACTION=move) is queued
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Network interface 2 is renamed from 'eth0' to 'ens3'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: sd-device: Created db file '/run/udev/data/n2' for '/devices/pci0000:00/0000:00:03.0/net/ens3'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Running command "/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0"
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Starting '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '//lib/dracut-lib.sh@434(): hookdir=/lib/dracut/hooks'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '//lib/dracut-lib.sh@435(): export hookdir'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '//lib/dracut-lib.sh@564(): command -v findmnt'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '//lib/dracut-lib.sh@1050(): command -v pidof'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '//lib/dracut-lib.sh@1227(): setmemdebug'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '//lib/dracut-lib.sh@1222(setmemdebug): '[' -z '' ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@1223(setmemdebug): getargnum 0 0 4 rd.memdebug'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@281(getargnum): local _b'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@282(getargnum): unset _b'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@283(getargnum): local _default _min _max'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@284(getargnum): _default=0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@284(getargnum): shift'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@285(getargnum): _min=0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@285(getargnum): shift'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@286(getargnum): _max=4'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@286(getargnum): shift'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '////lib/dracut-lib.sh@287(getargnum): getarg rd.memdebug'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '////lib/dracut-lib.sh@202(getarg): debug_off'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '////lib/dracut-lib.sh@18(debug_off): set +x'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '////lib/dracut-lib.sh@242(getarg): return 1'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@287(getargnum): _b='
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@288(getargnum): '[' 1 -ne 0 -a -z '' ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@288(getargnum): _b=0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@289(getargnum): '[' -n 0 ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@290(getargnum): isdigit 0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@268(isdigit): case "$1" in'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@272(isdigit): return 0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@290(getargnum): _b=0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@291(getargnum): '[' 0 -ge 0 ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@291(getargnum): '[' 0 -le 4 ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@291(getargnum): echo 0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '///lib/dracut-lib.sh@291(getargnum): return'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '//lib/dracut-lib.sh@1223(setmemdebug): export DEBUG_MEM_LEVEL=0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '//lib/dracut-lib.sh@1223(setmemdebug): DEBUG_MEM_LEVEL=0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@12(): '[' 6 -gt 0 ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@13(): case "$1" in'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@27(): name=ifup-eth0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@27(): shift'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@33(): shift'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@12(): '[' 4 -gt 0 ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@13(): case "$1" in'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@25(): unique=yes'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@33(): shift'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@12(): '[' 3 -gt 0 ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@13(): case "$1" in'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@15(): onetime=yes'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@33(): shift'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@12(): '[' 2 -gt 0 ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@13(): case "$1" in'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@31(): break'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@36(): '[' -z yes ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@39(): job=ifup-eth0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@40(): job=ifup-eth0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@43(): exe=/sbin/ifup'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@44(): shift'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@46(): '[' -x /sbin/ifup ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@47(): '[' -z /sbin/ifup ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@53(): '[' -n yes ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@53(): echo '[ -e "$job" ] && rm -f -- "$job"''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@54(): '[' -n '' ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@55(): echo /sbin/ifup eth0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@58(): mv -f /tmp/553-ifup-eth0.sh /lib/dracut/hooks/initqueue/if'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@59(): '[' -z '' ']''
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'(err) '/sbin/initqueue@60(): exit 0'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Process '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0' succeeded.
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Running command "/usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/ens3 --prefix=/net/ipv4/neigh/ens3 --prefix=/net/ipv6/conf/ens3 --prefix=/net/ipv6/"
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Starting '/usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/ens3 --prefix=/net/ipv4/neigh/ens3 --prefix=/net/ipv6/conf/ens3 --prefix=/net/ipv6/neigh/e'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/ens3 --prefix=/net/ipv4/neigh/ens3 --prefix=/net/ipv6/conf/ens3 --prefix=/net/ipv6/neigh/ens3'(err)'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/ens3 --prefix=/net/ipv4/neigh/ens3 --prefix=/net/ipv6/conf/ens3 --prefix=/net/ipv6/neigh/ens3'(err)'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/ens3 --prefix=/net/ipv4/neigh/ens3 --prefix=/net/ipv6/conf/ens3 --prefix=/net/ipv6/neigh/ens3'(err)'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/ens3 --prefix=/net/ipv4/neigh/ens3 --prefix=/net/ipv6/conf/ens3 --prefix=/net/ipv6/neigh/ens3'(err)'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/ens3 --prefix=/net/ipv4/neigh/ens3 --prefix=/net/ipv6/conf/ens3 --prefix=/net/ipv6/neigh/ens3'(err)'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: '/usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/ens3 --prefix=/net/ipv4/neigh/ens3 --prefix=/net/ipv6/conf/ens3 --prefix=/net/ipv6/neigh/ens3'(err)'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Process '/usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/ens3 --prefix=/net/ipv4/neigh/ens3 --prefix=/net/ipv6/conf/ens3 --prefix=/net/ipv6/neigh/en.
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Device (SEQNUM=1668, ACTION=add) processed
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: sd-device-monitor: Passed 570 byte to netlink monitor
Feb 22 21:42:32 localhost systemd-udevd[440]: ens3: sd-device-monitor: Passed 232 byte to netlink monitor
Feb 22 21:42:32 localhost systemd-udevd[440]: ens3: Processing device (SEQNUM=1673, ACTION=move)
Feb 22 21:42:32 localhost systemd-udevd[440]: ens3: /usr/lib/udev/rules.d/75-net-description.rules:6 Importing properties from results of builtin command 'net_id'
Feb 22 21:42:32 localhost systemd-udevd[440]: ens3: /usr/lib/udev/rules.d/75-net-description.rules:12 Importing properties from results of builtin command 'hwdb --subsystem=pci'
Feb 22 21:42:32 localhost systemd-udevd[440]: ens3: /usr/lib/udev/rules.d/75-net-description.rules:12 Failed to run builtin 'hwdb --subsystem=pci': Invalid argument
Feb 22 21:42:32 localhost systemd-udevd[440]: ens3: /usr/lib/udev/rules.d/80-net-setup-link.rules:5 Importing properties from results of builtin command 'path_id'
Feb 22 21:42:32 localhost systemd-udevd[440]: ens3: sd-device: Created db file '/run/udev/data/n2' for '/devices/pci0000:00/0000:00:03.0/net/ens3'
Feb 22 21:42:32 localhost systemd-udevd[440]: ens3: Device (SEQNUM=1673, ACTION=move) processed
Feb 22 21:42:32 localhost systemd-udevd[440]: ens3: sd-device-monitor: Passed 624 byte to netlink monitor

@mrc0mmand mrc0mmand changed the title Testsuite issues network-legacy seems to be broken in F31+ Feb 24, 2020
@mrc0mmand mrc0mmand changed the title network-legacy seems to be broken in F31+ network-legacy module seems to be broken in F31+ Feb 24, 2020
@mrc0mmand
Copy link
Contributor Author

I noticed two additional things:

  1. Setting NIC names explicitly via ifname=<interface>:<MAC> doesn't help, dracut still tries to ifup eth0 and eth1

  2. In certain cases dracut even mixes NIC names from before and after the rename (seen here:

...
[   18.030781] e1000 0000:00:03.0 eth0: (PCI:33MHz:32-bit) 52:54:00:12:34:00
[   18.038508] e1000 0000:00:03.0 eth0: Intel(R) PRO/1000 Network Connection
[   18.066718] PCI Interrupt Link [LNKD] enabled at IRQ 11
[   18.764389] e1000 0000:00:04.0 eth1: (PCI:33MHz:32-bit) 52:54:00:12:34:01
[   18.771964] e1000 0000:00:04.0 eth1: Intel(R) PRO/1000 Network Connection
[   18.800492] PCI Interrupt Link [LNKA] enabled at IRQ 10
[   19.515704] e1000 0000:00:05.0 eth2: (PCI:33MHz:32-bit) 52:54:00:12:34:02
[   19.524644] e1000 0000:00:05.0 eth2: Intel(R) PRO/1000 Network Connection
[   20.239935] e1000 0000:00:07.0 eth3: (PCI:33MHz:32-bit) 52:54:00:12:34:98
[   20.247416] e1000 0000:00:07.0 eth3: Intel(R) PRO/1000 Network Connection
[   20.963104] e1000 0000:00:08.0 eth4: (PCI:33MHz:32-bit) 52:54:00:12:34:99
[   20.970940] e1000 0000:00:08.0 eth4: Intel(R) PRO/1000 Network Connection
[   20.986697] e1000 0000:00:07.0 ens7: renamed from eth3
[   21.000164] e1000 0000:00:05.0 ens5: renamed from eth2
[   21.022485] e1000 0000:00:04.0 ens4: renamed from eth1
[   21.041872] e1000 0000:00:08.0 ens8: renamed from eth4
[   21.057786] e1000 0000:00:03.0 ens3: renamed from eth0
sys-subsystem-net-devices-ens7.device: Changed dead -> plugged
sys-devices-pci0000:00-0000:00:07.0-net-ens7.device: Changed dead -> plugged
sys-subsystem-net-devices-ens4.device: Changed dead -> plugged
sys-devices-pci0000:00-0000:00:04.0-net-ens4.device: Changed dead -> plugged
sys-subsystem-net-devices-ens8.device: Changed dead -> plugged
sys-devices-pci0000:00-0000:00:08.0-net-ens8.device: Changed dead -> plugged
sys-subsystem-net-devices-ens3.device: Changed dead -> plugged
sys-devices-pci0000:00-0000:00:03.0-net-ens3.device: Changed dead -> plugged
[   20.292253] dracut-initqueue[554]: /bin/dracut-initqueue@28(): check_finished
[   20.302306] dracut-initqueue[554]: /lib/dracut-lib.sh@444(check_finished): local f
[   20.312489] dracut-initqueue[554]: /lib/dracut-lib.sh@445(check_finished): for f in $hookdir/initqueue/finished/*.sh
[   20.324531] dracut-initqueue[554]: /lib/dracut-lib.sh@446(check_finished): '[' /lib/dracut/hooks/initqueue/finished/dhcp.sh = '/lib/dracut/hooks/initqueue/finished/*.sh' ']'
[   20.347343] dracut-initqueue[554]: /lib/dracut-lib.sh@447(check_finished): '[' -e /lib/dracut/hooks/initqueue/finished/dhcp.sh ']'
[   20.360379] dracut-initqueue[554]: /lib/dracut-lib.sh@447(check_finished): . /lib/dracut/hooks/initqueue/finished/dhcp.sh
[   20.373044] dracut-initqueue[554]: sys-subsystem-net-devices-ens5.device: Changed dead -> plugged
sys-devices-pci0000:00-0000:00:05.0-net-ens5.device: Changed dead -> plugged
//lib/dracut/hooks/initqueue/finished/dhcp.sh@1(source): '[' -d /sysroot/proc -o -e /dev/root ']'
[   20.397396] dracut-initqueue[554]: /lib/dracut-lib.sh@447(check_finished): return 1
[   20.407435] dracut-initqueue[554]: /bin/dracut-initqueue@30(): '[' -f /lib/dracut/hooks/initqueue/work ']'
[   20.418177] dracut-initqueue[554]: /bin/dracut-initqueue@31(): rm -f -- /lib/dracut/hooks/initqueue/work
[   20.418447] dracut-initqueue[554]: /bin/dracut-initqueue@34(): for job in $hookdir/initqueue/*.sh
[   20.427029] dracut-initqueue[554]: /bin/dracut-initqueue@35(): '[' -e /lib/dracut/hooks/initqueue/ifup-eth2.sh ']'
[   20.429939] dracut-initqueue[554]: /bin/dracut-initqueue@36(): job=/lib/dracut/hooks/initqueue/ifup-eth2.sh
[   20.433160] dracut-initqueue[554]: /bin/dracut-initqueue@36(): . /lib/dracut/hooks/initqueue/ifup-eth2.sh
[   20.439430] dracut-initqueue[554]: //lib/dracut/hooks/initqueue/ifup-eth2.sh@1(): '[' -e /lib/dracut/hooks/initqueue/ifup-eth2.sh ']'
[   20.449003] dracut-initqueue[554]: //lib/dracut/hooks/initqueue/ifup-eth2.sh@1(): rm -f -- /lib/dracut/hooks/initqueue/ifup-eth2.sh
[   20.449590] dracut-initqueue[554]: //lib/dracut/hooks/initqueue/ifup-eth2.sh@2(): /sbin/ifup eth2
[   20.456886] dracut-initqueue[554]: ++ hookdir=/lib/dracut/hooks
[   20.459215] dracut-initqueue[554]: ++ export hookdir
[   20.459638] dracut-initqueue[554]: ++ command -v findmnt
[   20.471158] dracut-initqueue[554]: ++ command -v pidof
[   20.471909] dracut-initqueue[554]: ++ setmemdebug
[   20.472623] dracut-initqueue[554]: ++ '[' -z 0 ']'
[   20.480091] dracut-initqueue[554]: + type ip_to_var
[   20.481252] dracut-initqueue[554]: + . /lib/net-lib.sh
[   20.481687] dracut-initqueue[554]: ++ type hostname
[   20.493543] dracut-initqueue[554]: + '[' -z eth2 ']'
[   20.493772] dracut-initqueue[554]: + netif=eth2
[   20.504933] dracut-initqueue[554]: + '[' eth2 = lo ']'
[   20.509068] dracut-initqueue[554]: + '[' -z '' ']'
[   20.509314] dracut-initqueue[554]: + '[' -e /tmp/vlan.eth2.phy ']'
[   20.509508] dracut-initqueue[554]: + '[' -e /tmp/vlan.eth2.phy ']'
[   20.525879] dracut-initqueue[554]: + for i in /tmp/vlan.${netif}.*
[   20.525958] dracut-initqueue[554]: + '[' -e '/tmp/vlan.eth2.*' ']'
[   20.527413] dracut-initqueue[554]: + continue
[   20.529721] dracut-initqueue[554]: + '[' -z '' ']'
[   20.539007] dracut-initqueue[554]: + for i in /tmp/bridge.*.info
[   20.540581] dracut-initqueue[554]: + '[' -e '/tmp/bridge.*.info' ']'
[   20.545695] dracut-initqueue[554]: + continue
[   20.546530] dracut-initqueue[554]: + '[' -z '' ']'
[   20.554080] dracut-initqueue[554]: + for i in /tmp/bond.*.info
[   20.555539] dracut-initqueue[554]: + '[' -e '/tmp/bond.*.info' ']'
[   20.555599] dracut-initqueue[554]: + continue
[   20.555638] dracut-initqueue[554]: + '[' -z '' ']'
[   20.562976] dracut-initqueue[554]: + for i in /tmp/team.*.info
[   20.563677] dracut-initqueue[554]: + '[' -e '/tmp/team.*.info' ']'
[   20.572954] dracut-initqueue[554]: + continue
[   20.573586] dracut-initqueue[554]: + ip link show dev eth2
[   20.582238] dracut-initqueue[554]: + exit 1
[   20.585422] dracut-initqueue[554]: /bin/dracut-initqueue@37(): check_finished
[   20.585486] dracut-initqueue[554]: /lib/dracut-lib.sh@444(check_finished): local f
<...snip...>
[   21.358534] dracut-initqueue[554]: /bin/dracut-initqueue@30(): '[' -f /lib/dracut/hooks/initqueue/work ']'
[   21.369614] dracut-initqueue[554]: /bin/dracut-initqueue@31(): rm -f -- /lib/dracut/hooks/initqueue/work
[   21.380905] dracut-initqueue[554]: /bin/dracut-initqueue@34(): for job in $hookdir/initqueue/*.sh
[   21.391514] dracut-initqueue[554]: /bin/dracut-initqueue@35(): '[' -e /lib/dracut/hooks/initqueue/ifup-ens5.sh ']'
[   21.403269] dracut-initqueue[554]: /bin/dracut-initqueue@36(): job=/lib/dracut/hooks/initqueue/ifup-ens5.sh
[   21.414588] dracut-initqueue[554]: /bin/dracut-initqueue@36(): . /lib/dracut/hooks/initqueue/ifup-ens5.sh
[   21.426036] dracut-initqueue[554]: //lib/dracut/hooks/initqueue/ifup-ens5.sh@1(): '[' -e /lib/dracut/hooks/initqueue/ifup-ens5.sh ']'
[   21.439494] dracut-initqueue[554]: //lib/dracut/hooks/initqueue/ifup-ens5.sh@1(): rm -f -- /lib/dracut/hooks/initqueue/ifup-ens5.sh
[   21.452378] dracut-initqueue[554]: //lib/dracut/hooks/initqueue/ifup-ens5.sh@2(): /sbin/ifup ens5
[   21.464171] dracut-initqueue[554]: ++ hookdir=/lib/dracut/hooks
[   21.473089] dracut-initqueue[554]: ++ export hookdir
[   21.480768] dracut-initqueue[554]: ++ command -v findmnt
[   21.488993] dracut-initqueue[554]: ++ command -v pidof
[   21.496950] dracut-initqueue[554]: ++ setmemdebug
[   21.503168] dracut-initqueue[554]: ++ '[' -z 0 ']'
[   21.503443] dracut-initqueue[554]: + type ip_to_var
[   21.508196] dracut-initqueue[554]: + . /lib/net-lib.sh
[   21.510733] dracut-initqueue[554]: ++ type hostname
[   21.510866] dracut-initqueue[554]: + '[' -z ens5 ']'
[   21.512119] dracut-initqueue[554]: + netif=ens5
[   21.515725] dracut-initqueue[554]: + '[' ens5 = lo ']'
[   21.517705] dracut-initqueue[554]: + '[' -z '' ']'
[   21.528981] dracut-initqueue[554]: + '[' -e /tmp/vlan.ens5.phy ']'
[   21.529693] dracut-initqueue[554]: + '[' -e /tmp/vlan.ens5.phy ']'
...

@haraldh
Copy link
Collaborator

haraldh commented Feb 25, 2020

This is fishy!

Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Network interface 2 is renamed from 'eth0' to 'ens3'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: sd-device: Created db file '/run/udev/data/n2' for '/devices/pci0000:00/0000:00:03.0/net/ens3'
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Running command "/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0"
Feb 22 21:42:32 localhost systemd-udevd[440]: eth0: Starting '/sbin/initqueue --name ifup-eth0 --unique --onetime /sbin/ifup eth0'

udevd stated that it will rename the device from 'eth0' to 'ens3' and should set $env{INTERFACE} accordingly in libsystemd/sd-device/device-private.c:device_rename() although it seems, that INTERFACE still has the old name.

I will try to bisect the systemd-udevd changes.

@haraldh
Copy link
Collaborator

haraldh commented Feb 25, 2020

This is the offending patch:
systemd/systemd@1448820

@haraldh
Copy link
Collaborator

haraldh commented Feb 25, 2020

Opened an issue:
systemd/systemd#14935

@haraldh
Copy link
Collaborator

haraldh commented Feb 25, 2020

Offending PR:
systemd/systemd#12700

mrc0mmand added a commit to mrc0mmand/dracut that referenced this issue Feb 26, 2020
The original behavior of $env{INTERFACE} was undocumented and changed in
the recent udev versions, breaking the ability to bring up networking
reliably. Switching to $name directive should fix this issue.

Related links:
 - systemd/systemd#12700 (udev PR)
 - systemd/systemd#12291 (related udev issue)
 - systemd/systemd#14935 (this issue, udev side)
 - dracutdevs#732 (this issue, dracut side)

Fixes: dracutdevs#732
mwilck pushed a commit to mwilck/dracut that referenced this issue Jun 26, 2020
The original behavior of $env{INTERFACE} was undocumented and changed in
the recent udev versions, breaking the ability to bring up networking
reliably. Switching to $name directive should fix this issue.

Related links:
 - systemd/systemd#12700 (udev PR)
 - systemd/systemd#12291 (related udev issue)
 - systemd/systemd#14935 (this issue, udev side)
 - dracutdevs#732 (this issue, dracut side)

Fixes: dracutdevs#732
(cherry picked from commit a8ba1c4)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Our bugs
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants