mkinitrd/dracut error after TW 20200925

Anyone else seeing these dracut errors after TW 20200925

Just updated one of my TW installs to 20200925 and when initrd runs these errors are now shown.

Luckily (!) it didn’t prevent booting…


snip...

I: memstrack is not available
I: If you need to use rd.memdebug>=4, please install memstrack
E: dracut-squash module requires squashfs-tools

snip...

E: FAILED: /usr/lib/dracut/dracut-install -D /var/tmp/dracut.AhLdD6/initramfs -H -N i2o_scsi --kerneldir /lib/modules/5.8.10-1-default/ -m -o -s ahci_platform_get_resources|ata_scsi_ioctl|scsi_add_host|blk_cleanup_queue|register_mtd_blktrans|scsi_esp_register|register_virtio_device|usb_stor_disconnect|mmc_add_host|sdhci_add_host|scsi_add_host_with_dma =drivers

snip...

I don’t know if the missing “squashfs-tools” is the cause of the “FAILED” message, or if it’s coincidental.

Currently (approx 10:00 BST 2020-09-27) neither “memstrack” or “squashfs-tools” appear to be in the TW repositories…

Hello,
I think it is coincidental.
I have ”dracut-squash…” message but I do not have the ”FAILED” message.

Running mkinitrd again from a terminal results in a little more info (the segfault caused by dracut-init.sh: line 252 (?)) than appears in the log.

dracut: *** Including module: kernel-modules ***
/usr/lib/dracut/dracut-init.sh: line 252:  9956 Segmentation fault      (core dumped) $DRACUT_INSTALL ${dracutsysrootdir:+-r "$dracutsysrootdir"} ${initdir:+-D "$initdir"} ${loginstall:+-L "$loginstall"} ${hostonly:+-H} ${check_supported:+--check-supported} ${omit_drivers:+-N "$omit_drivers"} ${srcmods:+--kerneldir "$srcmods"} -m "$@"
dracut: FAILED: /usr/lib/dracut/dracut-install -D /var/tmp/dracut.d0WfeQ/initramfs -H -N i2o_scsi --kerneldir /lib/modules/5.8.7-1-default/ -m -o -s ahci_platform_get_resources|ata_scsi_ioctl|scsi_add_host|blk_cleanup_queue|register_mtd_blktrans|scsi_esp_register|register_virtio_device|usb_stor_disconnect|mmc_add_host|sdhci_add_host|scsi_add_host_with_dma =drivers
dracut: *** Including module: kernel-modules-extra ***

… and this is the section ( lines 252-264 ) of /usr/lib/dracut/dracut-init.sh that is referenced:


dracut_instmods() {
    local _silent=0;
    local i;
     $no_kernel = yes ]] && return
    for i in "$@"; do
         $i == "--silent" ]] && _silent=1
    done

    $DRACUT_INSTALL \
        ${dracutsysrootdir:+-r "$dracutsysrootdir"} \
        ${initdir:+-D "$initdir"} ${loginstall:+-L "$loginstall"} ${hostonly:+-H} ${check_supported:+--check-supported} ${omit_drivers:+-N "$omit_drivers"} ${srcmods:+--kerneldir "$srcmods"} -m "$@"
    (($? != 0)) && (($_silent == 0)) && derror FAILED: $DRACUT_INSTALL ${dracutsysrootdir:+-r "$dracutsysrootdir"} ${initdir:+-D "$initdir"} ${loginstall:+-L "$loginstall"} ${hostonly:+-H} ${check_supported:+--check-supported} ${omit_drivers:+-N "$omit_drivers"} ${srcmods:+--kerneldir "$srcmods"} -m "$@" || :
}

… but that’s rather beyond me :wink:

I feel a bug report may be in order…

Reported: https://bugzilla.opensuse.org/show_bug.cgi?id=1177016

Just checked my zypp log and I got the same errors today running dracut.

Stuart

Got the following error:

I: *** Including module: kernel-modules ***
E: FAILED: /usr/lib/dracut/dracut-install -D /var/tmp/dracut.N9BVR0/initramfs -H -N i2o_scsi --kerneldir /lib/modules/5.8.7-1-default/ -m -o -s ahci_platform_get_resources|ata_scsi_ioctl|scsi_add_host|blk_cleanup_queue|register_mtd_blktrans|scsi_esp_register|register_virtio_device|usb_stor_disconnect|mmc_add_host|sdhci_add_host|scsi_add_host_with_dma =drivers
I: *** Including module: kernel-modules-extra ***

Rebooted into 5.8.10-1-default and successfully ran both without encountering any errors:

dracut --kver 5.8.10-1-default --force
dracut --kver 5.8.7-1-default --force

Thanks.

Including the segfault and “Failed” message, or just the others as @another_roadrunner ?

I’m consistently getting the error (after rebooting) when attempting to create a new initrd… I wonder if it’s related to which modules are included?


dracut: Will not override existing initramfs (/boot/initrd-5.8.7-1-default) without --force
erlangen:~ # dracut --kver 5.8.7-1-default --force
dracut: Executing: /usr/bin/dracut --kver 5.8.7-1-default --force
dracut: dracut module 'rngd' will not be installed, because command 'rngd' could not be found!
dracut: dracut module 'lvmmerge' will not be installed, because command 'lvm' could not be found!
dracut: dracut module 'lvm' will not be installed, because command 'lvm' could not be found!
dracut: dracut module 'biosdevname' will not be installed, because command 'biosdevname' could not be found!
dracut: memstrack is not available
dracut: If you need to use rd.memdebug>=4, please install memstrack
dracut: dracut module 'rngd' will not be installed, because command 'rngd' could not be found!
dracut: dracut module 'lvmmerge' will not be installed, because command 'lvm' could not be found!
dracut: dracut module 'lvm' will not be installed, because command 'lvm' could not be found!
dracut: memstrack is not available
dracut: If you need to use rd.memdebug>=4, please install memstrack
dracut: *** Including module: bash ***
dracut: *** Including module: systemd ***
dracut: *** Including module: systemd-initrd ***
dracut: *** Including module: i18n ***
dracut: *** Including module: btrfs ***
dracut: *** Including module: kernel-modules ***
dracut: *** Including module: kernel-modules-extra ***
dracut: *** Including module: rootfs-block ***
dracut: *** Including module: suse-btrfs ***
dracut: *** Including module: suse-xfs ***
dracut: *** Including module: terminfo ***
dracut: *** Including module: udev-rules ***
dracut: Skipping udev rule: 40-redhat.rules
dracut: Skipping udev rule: 50-firmware.rules
dracut: Skipping udev rule: 50-udev.rules
dracut: Skipping udev rule: 91-permissions.rules
dracut: Skipping udev rule: 80-drivers-modprobe.rules
dracut: *** Including module: dracut-systemd ***
dracut: *** Including module: haveged ***
dracut: *** Including module: ostree ***
dracut: *** Including module: usrmount ***
dracut: *** Including module: base ***
dracut: *** Including module: fs-lib ***
dracut: *** Including module: shutdown ***
dracut: *** Including module: suse ***
dracut: *** Including module: suse-initrd ***
dracut: *** Including modules done ***
dracut: *** Installing kernel module dependencies ***
dracut: *** Installing kernel module dependencies done ***
dracut: *** Resolving executable dependencies ***
dracut: *** Resolving executable dependencies done ***
dracut: *** Hardlinking files ***
dracut: *** Hardlinking files done ***
dracut: *** Generating early-microcode cpio image ***
dracut: *** Constructing GenuineIntel.bin ***
dracut: *** Store current command line parameters ***
dracut: Stored kernel commandline:
dracut: rd.driver.pre=btrfs
dracut:  root=UUID=204f7d0f-979a-41e1-a483-a597d0357e0b rootfstype=btrfs rootflags=rw,relatime,ssd,space_cache,subvolid=2633,subvol=/@/.snapshots/1817/snapshot,subvol=@/.snapshots/1817/snapshot
dracut: *** Stripping files ***
dracut: *** Stripping files done ***
dracut: *** Creating image file '/boot/initrd-5.8.7-1-default' ***
dracut: *** Creating initramfs image file '/boot/initrd-5.8.7-1-default' done ***
erlangen:~ # 

I have:


erlangen:~ # zypper if squashfs
Loading repository data...
Reading installed packages...


Information for package squashfs:
---------------------------------
Repository     : openSUSE-20191106-0
Name           : squashfs
Version        : 4.4-3.1
Arch           : x86_64
Vendor         : openSUSE
Installed Size : 430.2 KiB
Installed      : Yes
Status         : up-to-date
Source package : squashfs-4.4-3.1.src
Summary        : A Read-Only File System with Efficient Compression
Description    : 
    This package contains the userland utilities to create and read
    squashfs images.

erlangen:~ #

Just coincidental, I think.

I’m getting the squashfs message, but I am not seeing any segfault.

I don’t think the squashfs message is of any concern, unless your system really needs squashfs. But the segfault is of concern, and you were right to report a bug on that.

Thanks…

The included modules on mine are somewhat different, these are AMD machines and no btrfs for starters…

I’ve just updated a second TW machine and see the same issue. (Added to my earlier bug report and attached full mkinitrd.log for that run)

I have squashfs installed, same version as yourself, but dracut complains “dracut-squash module requires squashfs-tools” squashfs-tools is AFAIK a separate package.

I’ll wait and see what the outcome of the bug report is… Both machines are bootable and working, so no panic.

Hi
No additional tweaks in /etc/dracut.conf.d/ files? No errors seen here in either /var/log/zypper.log or /var/log/YaST2/mkinitrd.log when updating to 20200925.

No, I’ve nothing change there.

The bug report I made earlier has now had a core dump added and the dracut maintainers added as cc, so hopefully there will be further movement there…

I don’t know how dracut works, but despite the segfault it continued (or restarted?) and an initrd was created, as I wrote earlier both machines boot, so I’m not too concerned about the issue.

Strange though how some users don’t see the issue at all, others, @karlmistelberger for example, see it once only with dracut working after a reboot, and some users such as myself, are seeing it consistently…

Same here: segfault before and after reboot, systems boots fine. systemd reports the loader takes 2x as much time (500ms vs 1s)

No change here - updated to snapshot 25/09/2020 yesterday from a fresh install on Thursday.

Yet another outcome: The 3400G has “E: dracut-squash module requires squashfs-tools”, no core dump. But that won’t change when rebuilding. Installing squashfs fixes that.

Hi
Not installed here…;


zypper se -i squashfs
Loading repository data...
Reading installed packages...
No matching items found.

lsinitrd | grep squashfs
{returns nothing}

The segfault was caused by a circular dependency which caused dracut to run into stack exhaustion after a while…#

A “fix” will be in snapshot 20200928 and it’s also being published in the update repo.

https://bugzilla.opensuse.org/show_bug.cgi?id=1177016#c9

erlangen:~ # zypper se -is dracut
Loading repository data...
Reading installed packages...

S | Name   | Type    | Version                    | Arch   | Repository
--+--------+---------+----------------------------+--------+---------------------------
i | dracut | package | 050+suse.227.g7a9b782d-2.1 | x86_64 | **openSUSE-Tumbleweed-Update**
erlangen:~ #

Just updated both my TW installs, no more segfaults, all is well in Tumbleweed Land… for the moment :wink: