Bug 1180364 - dracut 0.51 breaks NFS root
Summary: dracut 0.51 breaks NFS root
Status: RESOLVED DUPLICATE of bug 1182227
Alias: None
Product: openSUSE Tumbleweed
Classification: openSUSE
Component: Basesystem (show other bugs)
Version: Current
Hardware: Other Other
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: dracut maintainers
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-12-25 20:24 UTC by Andreas Schwab
Modified: 2021-02-23 14:58 UTC (History)
4 users (show)

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---
mt: needinfo? (rtorreromarijnissen)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andreas Schwab 2020-12-25 20:24:14 UTC
The initrd created by dracut 0.51 fails to start the network interface for NFS root.

[    9.245172] hifive dracut-cmdline[158]: dracut-dracut-051+suse.84.gc6bd70b8-1.1
[    9.273398] hifive dracut-cmdline[158]: Using kernel command line parameters: rd.driver.pre=spi_bitbang rd.driver.pre=mmc-spi root=nfs4:10.160.4.0:/daten/root/hifive:rw,relatime,vers=4.2,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.160.5.169,local_lock=none,addr=10.160.4.0 ifname=eth0:70:b3:d5:92:f1:07 ip=eth0:dhcp resume=UUID=a9c5ddb0-6c03-4492-b125-c3e5b22aac24 rootfstype=nfs4 rootflags=rw,relatime,vers=4.2,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.160.5.169,local_lock=none,addr=10.160.4.0 earlycon=sifive,0x10010000 console=ttySIF0,115200 ignore_loglevel root=10.160.4.0:/daten/root/hifive rw
[    9.301013] hifive systemd-modules-load[139]: Inserted module 'dm_multipath'
[    9.376482] hifive systemd-modules-load[139]: Inserted module 'sg'
[    9.384050] hifive systemd[1]: Finished Load Kernel Modules.
[    9.394873] hifive systemd[1]: Starting Apply Kernel Variables...
[    9.435585] hifive systemd[1]: Finished Apply Kernel Variables.
[    9.806054] hifive systemd[1]: Finished dracut cmdline hook.
[    9.817135] hifive systemd[1]: Starting dracut pre-udev hook...
[    9.993499] hifive dracut-pre-udev[219]: Warning: ifname=eth0 uses the kernel name space for interfaces
[   10.003415] hifive dracut-pre-udev[219]: Warning: This can fail for multiple network interfaces and is discouraged!
[   10.003415] hifive dracut-pre-udev[219]: Warning: Please use a custom name like "netboot" or "bluesocket"
[   10.003415] hifive dracut-pre-udev[219]: Warning: or use biosdevname and no ifname= at all.
[   10.072459] hifive kernel: random: fast init done
[   10.777934] hifive kernel: random: crng init done
[   10.780592] hifive kernel: random: 7 urandom warning(s) missed due to ratelimiting
[   10.854315] hifive kernel: RPC: Registered named UNIX socket transport module.
[   10.859459] hifive kernel: RPC: Registered udp transport module.
[   10.864188] hifive kernel: RPC: Registered tcp transport module.
[   10.868835] hifive kernel: RPC: Registered tcp NFSv4.1 backchannel transport module.
[   10.887959] hifive rpcbind[237]: cannot get local address for udp: Servname not supported for ai_socktype
[   10.889532] hifive rpcbind[237]: cannot get local address for tcp: Servname not supported for ai_socktype
[   10.889916] hifive rpcbind[237]: cannot get local address for udp6: Servname not supported for ai_socktype
[   10.890338] hifive rpcbind[237]: cannot get local address for tcp6: Servname not supported for ai_socktype
[   11.065117] hifive rpc.statd[242]: Version 2.5.2 starting
[   11.074472] hifive rpc.statd[242]: Failed to open directory sm: No such file or directory
[   11.074729] hifive rpc.statd[242]: Initializing NSM state
[   11.201713] hifive rpc.statd[242]: Failed to stat /var/lib/nfs/sm: No such file or directory
[   11.277869] hifive rpc.idmapd[247]: Setting log level to 0
[   11.279681] hifive rpc.idmapd[247]: libnfsidmap: requested translation method, 'nsswitch', is not available
[   11.344724] hifive systemd[1]: Listening on D-Bus System Message Bus Socket.
[   11.358989] hifive systemd[1]: Started D-Bus System Message Bus.
[   11.387118] hifive systemd[1]: Starting wicked AutoIPv4 supplicant service...
[   11.399712] hifive systemd[1]: Starting wicked DHCPv4 supplicant service...
[   11.412287] hifive systemd[1]: Starting wicked DHCPv6 supplicant service...
[   11.467781] hifive systemd[1]: Started wicked AutoIPv4 supplicant service.
[   11.489700] hifive systemd[1]: Started wicked DHCPv4 supplicant service.
[   11.497854] hifive systemd[1]: Started wicked DHCPv6 supplicant service.
[   11.511894] hifive systemd[1]: Starting wicked network management service daemon...
[   11.625662] hifive systemd[1]: Started wicked network management service daemon.
[   11.659753] hifive systemd[1]: Starting wicked network nanny service...
[   11.718070] hifive dracut-pre-udev[255]: wicked: ifup: no matching interfaces
[   11.725791] hifive wicked[255]: ifup: no matching interfaces
[   11.750295] hifive systemd[1]: Started wicked network nanny service.
[   12.249852] hifive systemd[1]: Finished dracut pre-udev hook.
[   12.277912] hifive systemd[1]: Starting Rule-based Manager for Device Events and Files...
[   12.360578] hifive systemd[1]: Started Rule-based Manager for Device Events and Files.
[   12.384121] hifive systemd[1]: Condition check resulted in dracut pre-trigger hook being skipped.
[   12.389404] hifive systemd[1]: Starting Coldplug All udev Devices...
[   12.679180] hifive systemd[1]: Finished Coldplug All udev Devices.
[   12.728504] hifive systemd-udevd[288]: ethtool: autonegotiation is unset or enabled, the speed and duplex are not writable.
[   12.963588] hifive kernel: libphy: Fixed MDIO Bus: probed
[   13.071405] hifive kernel: pps_core: LinuxPPS API ver. 1 registered
[   13.075601] hifive kernel: pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[   13.052256] hifive systemd[1]: Starting dracut initqueue hook...
[   13.062938] hifive systemd[1]: Starting Show Plymouth Boot Screen...
[   13.114654] hifive kernel: PTP clock support registered
[   13.077548] hifive systemd[1]: Starting Wait for udev To Complete Device Initialization...
[   13.087622] hifive systemd[1]: Received SIGRTMIN+20 from PID 296 (plymouthd).
[   13.115628] hifive systemd[1]: Started Show Plymouth Boot Screen.
[   13.144941] hifive systemd[1]: Condition check resulted in Dispatch Password Requests to Console Directory Watch being skipped.
[   13.147630] hifive systemd[1]: Started Forward Password Requests to Plymouth Directory Watch.
[   13.147917] hifive systemd[1]: Reached target Paths.
[   13.154225] hifive udevadm[297]: systemd-udev-settle.service is deprecated. Please fix wickedd.service not to pull it in.
[   13.244263] hifive kernel: macb 10090000.ethernet: Registered clk switch 'sifive-gemgxl-mgmt'
[   13.250861] hifive kernel: macb 10090000.ethernet: GEM doesn't support hardware ptp.
[   13.257926] hifive kernel: libphy: MACB_mii_bus: probed
[   13.385694] hifive kernel: MACsec IEEE 802.1AE
[   13.449149] hifive kernel: macb 10090000.ethernet eth0: Cadence GEM rev 0x10070109 at 0x10090000 irq 16 (70:b3:d5:92:f1:07)
[   13.411025] hifive systemd-udevd[281]: Using default interface naming scheme 'v245'.
[   13.412265] hifive systemd-udevd[281]: ethtool: autonegotiation is unset or enabled, the speed and duplex are not writable.
[   13.478656] hifive systemd[1]: Finished Wait for udev To Complete Device Initialization.
[   13.480241] hifive systemd[1]: Reached target System Initialization.
[   13.480688] hifive systemd[1]: Reached target Basic System.
[  176.037872] hifive dracut-initqueue[294]: Warning: dracut-initqueue: timeout, still waiting for following initqueue hooks:
Comment 1 Andreas Schwab 2020-12-25 20:51:53 UTC
The network-wicked module is broken.
Comment 2 Thomas Blume 2021-01-08 09:18:07 UTC
(In reply to Andreas Schwab from comment #1)
> The network-wicked module is broken.

Hm:

[   13.411025] hifive systemd-udevd[281]: Using default interface naming scheme 'v245'.

that should use the predictable names (which is standard in tumbleweed AFAIK).
eth0 is the kernel name and might not match.
Probably the NIC was renamed before wicked starts running.
Could you attach a full dmesg from the boot?
Comment 3 Andreas Schwab 2021-01-19 11:28:24 UTC
This is a sane system, so there is of course no renaming.
Comment 4 Thomas Blume 2021-01-20 12:26:48 UTC
I've reproduced the issue on my testmachine.
Seems that wicked is refusing to set up any interface if /etc/sysconfig/network/ifcfg* doesn't exists.
Comment 5 Thomas Blume 2021-01-20 14:17:04 UTC
(In reply to Thomas Blume from comment #4)
> I've reproduced the issue on my testmachine.
> Seems that wicked is refusing to set up any interface if
> /etc/sysconfig/network/ifcfg* doesn't exists.

Actually, wicked is supposed to read its config from /tmp/dracut.xml

Marius, the below cmdline.conf:

-->
sh-5.0# cat /tmp/cmdline.2748.conf 
 root=nfs4:192.168.57.254:/nfsroot:rw,relatime,vers=4.2,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=192.168.57.141,local_lock=none,addr=192.168.57.254 ifname=ens3:52:54:00:dc:43:b6 ip=ens3:dhcp rootfstype=nfs4 rootflags=rw,relatime,vers=4.2,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=192.168.57.141,local_lock=none,addr=192.168.57.254   initrd=initrd console=ttyS0sh-5.0# 
--<

creates the following dracut.xml:

-->
sh-5.0# wicked show-config --ifconfig dracut:cmdline:/tmp/cmdline.2748.conf
<interface origin="dracut:cmdline">
  <name namespace="ethernet">
    <permanent-address>52:54:00:dc:43:b6</permanent-address>
  </name>
  <ethernet/>
  <link/>
  <ipv4>
    <enabled>true</enabled>
    <arp-verify>true</arp-verify>
  </ipv4>
  <ipv4:dhcp>
    <enabled>true</enabled>
    <update>default-route,dns,nis,ntp,nds,mtu,tz,boot</update>
    <defer-timeout>15</defer-timeout>
    <recover-lease>true</recover-lease>
    <release-lease>false</release-lease>
  </ipv4:dhcp>
</interface>
<interface origin="dracut:cmdline">
  <name namespace="ethernet">
    <permanent-address>52:54:00:dc:43:b6</permanent-address>
  </name>
  <ethernet/>
  <link/>
  <ipv4>
    <enabled>true</enabled>
    <arp-verify>true</arp-verify>
  </ipv4>
  <ipv4:dhcp>
    <enabled>true</enabled>
    <update>default-route,dns,nis,ntp,nds,mtu,tz,boot</update>
    <defer-timeout>15</defer-timeout>
    <recover-lease>true</recover-lease>
    <release-lease>false</release-lease>
  </ipv4:dhcp>
</interface>
--<

which is apparently invalid:

-->
sh-5.0# wicked --log-level debug bootstrap --ifconfig /tmp/dracut1.xml all
wicked: __ni_config_parse_ifconfig_source: Adding ifconfig firmware:
wicked: __ni_config_parse_ifconfig_source: Adding ifconfig compat:
wicked: __ni_config_parse_ifconfig_source: Adding ifconfig wicked:
wicked: cannot get interface name - config has no valid <name> node
wicked: cannot get interface name - config has no valid <name> node
wicked: skipping lo interface: no configuration provided
wicked: skipping ens3 interface: no configuration provided
wicked: skipping ens9 interface: no configuration provided
wicked: skipping ens10 interface: no configuration provided
wicked: ifup: no matching interfaces
--<

The ifname parameter contains the name and the mac address but in the xml, I can only see the interface address in the <name> tag.
Is that a parsing error from wicked or a wrong command line?
Comment 9 Fabian Vogt 2021-02-22 15:22:57 UTC
This seems to be the same as bug 1182227. I did some debugging of wicked there already, please have a look.
Comment 10 Thomas Blume 2021-02-23 14:58:41 UTC
(In reply to Fabian Vogt from comment #9)
> This seems to be the same as bug 1182227. I did some debugging of wicked
> there already, please have a look.

Thanks Fabian, so let's continue in bug#1182227.

*** This bug has been marked as a duplicate of bug 1182227 ***