Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 923126 - sys-kernel/dracut-060_pre20240104 stalls during "Hardlinking files" step in initramfs for UKI creation
Summary: sys-kernel/dracut-060_pre20240104 stalls during "Hardlinking files" step in i...
Status: RESOLVED NEEDINFO
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal major
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-01-28 15:36 UTC by MrSnivvel
Modified: 2024-01-31 02:26 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Files in /var/tmp/dracut.LXc440 during hardlinking stalled stage (dracut-tmp-files.txt,43.80 KB, text/plain)
2024-01-28 15:41 UTC, MrSnivvel
Details
Dracut without --nohardlink (dracut-060_pre20240104-nohardlinks.txt,63.12 KB, text/plain)
2024-01-28 20:26 UTC, MrSnivvel
Details

Note You need to log in before you can comment on or make changes to this bug.
Description MrSnivvel 2024-01-28 15:36:55 UTC
Dracut step of "Hardlinking Files" stalls and never completes during both 'make install' kernel compile and when ran independently '/usr/bin/dracut --force --verbose --kernel-image arch/x86/boot/bzImage arch/x86/boot/initrd 6.7.2-gentoo-r1-x86_64'.  Files are created in /var/tmp/dracut.* and the hardlink process is in a D state:

root      199475  0.0  0.0   2644  1536 pts/4    D+   05:01   0:00 hardlink /var/tmp/dracut.LXc440/initramfs

sys-kernel/dracut-060_pre20240104
sys-kernel/gentoo-sources-6.7.2-r1
sys-kernel/installkernel-18-r1

Reproducible: Always




emerge --info =sys-kernel/dracut-060_pre20240104
Portage 3.0.61 (python 3.11.7-final-0, default/linux/amd64/17.1/desktop/gnome/systemd/merged-usr, gcc-13, glibc-2.38-r9, 6.7.0-gentoo-x86_64 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-6.7.0-gentoo-x86_64-x86_64-AMD_Ryzen_Threadripper_PRO_3955WX_16-Cores-with-glibc2.38
KiB Mem:   395859452 total,  26830060 free
KiB Swap:   67108860 total,  67101004 free
Timestamp of repository gentoo: Sun, 28 Jan 2024 04:04:25 +0000
Head commit of repository gentoo: 18435f393be34c3fb8341588dc19a05c2683f347

Timestamp of repository gitlab: Fri, 26 Jan 2024 12:48:04 +0000
Head commit of repository gitlab: 363e14a25b41a928491aeb68f8a0accc6b9bec79

Timestamp of repository guru: Sat, 27 Jan 2024 17:35:16 +0000
Head commit of repository guru: 8fed0852166136b43380c168b3892795b3445285

Timestamp of repository inode64-overlay: Sat, 27 Jan 2024 17:35:25 +0000
Head commit of repository inode64-overlay: c6eb05a1142d5ea78942bdfc08b3c7809f4a214c

Timestamp of repository sage-on-gentoo: Sat, 27 Jan 2024 17:35:06 +0000
Head commit of repository sage-on-gentoo: 5d4aec52428f75d538294022f5007f2a8c42e34a

Head commit of repository science: f9f093aa8035bb4656c98d054e00b5159e059153

Head commit of repository torbrowser: 235d6eb9f7199de2bb0140642263db0c90feaea0

Head commit of repository nitratesky: 78a81a38092019aadfce37f9aeebbbb76d1134a3

Head commit of repository steam-overlay: de98a6015a167bdc979fc5325752692b5179a2fc

Timestamp of repository nest: Sat, 27 Jan 2024 17:35:13 +0000
Head commit of repository nest: 0686f9d3bde1a011dc9548cab9ec848a00c3f2cd

sh bash 5.2_p26
ld GNU ld (Gentoo 2.41 p5) 2.41.0
app-misc/pax-utils:        1.3.7::gentoo
app-shells/bash:           5.2_p26::gentoo
dev-build/autoconf:        2.13-r8::gentoo, 2.71-r6::gentoo, 2.72-r1::gentoo
dev-build/automake:        1.16.5-r1::gentoo
dev-build/cmake:           3.28.1-r1::gentoo
dev-build/libtool:         2.4.7-r2::gentoo
dev-build/make:            4.4.1-r1::gentoo
dev-build/meson:           1.3.1-r1::gentoo
dev-java/java-config:      2.3.3-r1::gentoo
dev-lang/perl:             5.38.2-r1::gentoo
dev-lang/python:           3.10.13::gentoo, 3.11.7::gentoo, 3.12.1_p1::gentoo
dev-lang/rust:             1.74.1::gentoo
sys-apps/baselayout:       2.14-r1::gentoo
sys-apps/sandbox:          2.38::gentoo
sys-apps/systemd:          255.3::gentoo
sys-devel/binutils:        2.41-r5::gentoo
sys-devel/binutils-config: 5.5::gentoo
sys-devel/clang:           16.0.6::gentoo, 17.0.6::gentoo
sys-devel/gcc:             13.2.1_p20240113-r1::gentoo
sys-devel/gcc-config:      2.11::gentoo
sys-devel/lld:             17.0.6::gentoo
sys-devel/llvm:            16.0.6::gentoo, 17.0.6::gentoo
sys-kernel/linux-headers:  6.7::gentoo (virtual/os-headers)
sys-libs/glibc:            2.38-r9::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/gentoo.git
    priority: -1000
    volatile: False

gitlab
    location: /var/db/repos/gitlab
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/gitlab.git
    masters: gentoo
    volatile: False

guru
    location: /var/db/repos/guru
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/guru.git
    masters: gentoo
    volatile: False

inode64-overlay
    location: /var/db/repos/inode64-overlay
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/inode64-overlay.git
    masters: gentoo
    volatile: False

local-grotto
    location: /var/db/repos/local-grotto
    masters: gentoo
    volatile: False

sage-on-gentoo
    location: /var/db/repos/sage-on-gentoo
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/sage-on-gentoo.git
    masters: gentoo
    volatile: False

science
    location: /var/db/repos/science
    sync-type: git
    sync-uri: git://git.gentoo.org/proj/sci.git
    masters: gentoo
    volatile: False

torbrowser
    location: /var/db/repos/torbrowser
    sync-type: git
    sync-uri: https://github.com/MeisterP/torbrowser-overlay.git
    masters: gentoo
    volatile: False

nitratesky
    location: /var/db/repos/nitratesky
    sync-type: git
    sync-uri: https://github.com/VTimofeenko/nitratesky
    masters: gentoo nest
    priority: 50
    volatile: False

steam-overlay
    location: /var/db/repos/steam-overlay
    sync-type: git
    sync-uri: https://github.com/anyc/steam-overlay.git
    masters: gentoo
    priority: 50
    volatile: False

nest
    location: /var/db/repos/nest
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/nest.git
    masters: gentoo
    priority: 99
    volatile: False

Binary Repositories:

gentoobinhost
    priority: 1
    sync-uri: https://gentoo.osuosl.org/releases/amd64/binpackages/17.1/x86-64

Installed sets: @bareboneswm, @db, @desktop, @devops, @fonts, @games, @opencl, @privacy, @programming, @radio, @streaming, @utils
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/var/cache/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="C.UTF8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LEX="flex"
LINGUAS="en en_US"
MAKEOPTS="-j48"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
RUSTFLAGS="-C target-cpu=native -C link-arg=-Wl,-z,pack-relative-relocs"
SHELL="/bin/bash"
USE="X a52 aac acl acpi aio alsa amd64 amf amr amrenc ao apache2 appindicator archive atasmart autotype awt boot boto branding browser btpclient btrfs bzip2 cairo calendar caps cdda cddb cdr chromium cli colord compositor connection-sharing context crypt cups curl dbus development device-mapper dia down-root dracut dri drm dts dvd dvdr eap-tls eds egl elfutils encode epspdf evo exif extensions extra extraengine fdk ffmpge flac fortran fpm freerdp games gcj gd gdata gdbm geckodriver gentoo-vm gif gimp git glamor gles gles1 gles2 gltf gmp gnome gnome-keyring gnome-shell gpg gpm graph graphics gstreamer gtk gtk3 gui hcitop hddtemp http http3 humanities hwaccel iconv icu imagemagick introspection iproute2 iptables ipv6 jack javascript jemalloc jpeg jpeg2k json kate kernel-install keyring lcms ldac libdrm libkms libnotify libtesseract libtirpc libvirt lm-sensors lm_sensors login lto lxc lz4 lzma mad matroska maxminddb mediaplayer mms mmx mmxext mng mod modplug mp3 mp4 mpeg mtp multilib music mysql mysqli mysqlnd nautilus ncat ncurses network networkmanager nfs nfsv4 nfsv41 nftables nginx nls notification nping ocr odf offensive ofono ofx ogg omega openal opencl opengl openmp opus osmesa ozone pam pango pcre pda pdf pdfannotextractor pdfimport pdo pgo php pipewire png policykit postgres postproc ppds printsupport profiling pstricks publishers pulseaudio python qemu qt5 raw readline redis rrdcgi rubberband s3tc science sdl seccomp sendto sensord shaderc shout slib soap sockets sound speech speex spell spice sqlite srt sse sse2 sse3 sse4.1 sse4.2 ssh ssl ssse3 staging startup-notification svc svg syntax-check sysprof system-ffmpeg system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-llvm system-sqlite systemd systemtap sysv-utils sysvipc terminal test-rust tex4ht texi2html tfshark theora threads thunar tiff tools tor-hardening tproxy tray trayicon truetype udev udisks uki ukify unicode update_drivedb upower usb usbredir user-session uuid uvm v4l vaapi vdpau vector-icons vim vim-syntax visio vkd3d vlc vnc vorbis vpx vte vulkan vulkan-overlay wayland webp widevine wireshark-plugins wxwidgets x264 x265 xa xattr xcb xcomposite xephyr xetex xface xft xinerama xml xmlwriter xrandr xsl xslt xv xvfb xvid xvmc zip zlib zsh-completion zsh-completions" ABI_X86="64 32" ADA_TARGET="gnat_2021" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_core authn_dbm authn_file authz_core authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation proxy proxy_balancer proxy_connect proxy_fdpass proxy_fcgi proxy_http proxy_scgi proxy_wstunnel ratelimit rewrite setenvif slotmem_shm socache_shmcb speling status unique_id unixd userdir usertrack vhost_alias" APACHE2_MPMS="event" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3" CURL_SSL="openssl" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 ntrip navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="libinput joystick" KERNEL="linux" L10N="en en-US" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LIBREOFFICE_EXTENSIONS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" NGINX_MODULES_HTTP="access auth_basic autoindex browser charset empty_gif fastcgi geo gzip limit_conn limit_req map memcached proxy referer rewrite scgi split_clients ssi upstream_ip_hash userid uwsgi gunzip gzip_static metrics mp4 naxsi security realip stub_status pcre-jit" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-1" POSTGRES_TARGETS="postgres16" PYTHON_SINGLE_TARGET="python3_11" PYTHON_TARGETS="python3_11" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby31" SANE_BACKENDS="epson epson2 net" VIDEO_CARDS="amdgpu radeonsi" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, RANLIB, READELF, SIZE, STRINGS, STRIP, YACC, YFLAGS

=================================================================
                        Package Settings
=================================================================

sys-kernel/dracut-060_pre20240104::gentoo was built with the following:
USE="(-selinux) (-test)" ABI_X86="(64)"
FEATURES="ipc-sandbox qa-unresolved-soname-deps preserve-libs multilib-strict usersync xattr config-protect-if-modified strict usersandbox network-sandbox pid-sandbox pkgdir-index-trusted news distlocks ebuild-locks unmerge-orphans sandbox binpkg-multi-instance sfperms binpkg-dostrip binpkg-docompress parallel-fetch unmerge-logs protect-owned buildpkg-live fixlafiles binpkg-logs userfetch userpriv merge-sync assume-digests unknown-features-warn"
Comment 1 MrSnivvel 2024-01-28 15:39:51 UTC
# make install
  INSTALL /boot
run-parts: executing /etc/kernel/preinst.d/50-dracut.install 6.7.2-gentoo-r1-x86_64 arch/x86/boot/bzImage
dracut[I]: Executing: /usr/bin/dracut --force --verbose --kernel-image arch/x86/boot/bzImage arch/x86/boot/initrd 6.7.2-gentoo-r1-x86_64
dracut[I]: Module 'dash' will not be installed, because command 'dash' could not be found!
dracut[I]: Module 'mksh' will not be installed, because command 'mksh' could not be found!
dracut[I]: Module 'systemd-pcrphase' will not be installed, because command '/usr/lib/systemd/systemd-pcrphase' could not be found!
dracut[I]: Module 'systemd-pcrphase' will not be installed, because command '/usr/lib/systemd/systemd-pcrextend' could not be found!
dracut[I]: Module 'busybox' will not be installed, because command 'busybox' could not be found!
dracut[I]: Module 'rngd' will not be installed, because command 'rngd' could not be found!
dracut[I]: Module 'connman' will not be installed, because command 'connmand' could not be found!
dracut[I]: Module 'connman' will not be installed, because command 'connmanctl' could not be found!
dracut[I]: Module 'connman' will not be installed, because command 'connmand-wait-online' could not be found!
dracut[I]: Module 'network-legacy' will not be installed, because command 'dhclient' could not be found!
dracut[I]: 62bluetooth: Could not find any command of '/usr/lib/bluetooth/bluetoothd /usr/libexec/bluetooth/bluetoothd'!
dracut[I]: Module 'lvmmerge' will not be installed, because command 'lvm' could not be found!
dracut[I]: Module 'lvmthinpool-monitor' will not be installed, because command 'lvm' could not be found!
dracut[I]: Module 'dmraid' will not be installed, because command 'dmraid' could not be found!
dracut[I]: Module 'dmsquash-live-ntfs' will not be installed, because command 'ntfs-3g' could not be found!
dracut[I]: Module 'lvm' will not be installed, because command 'lvm' could not be found!
dracut[I]: Module 'mdraid' will not be installed, because command 'mdadm' could not be found!
dracut[I]: Module 'iscsi' will not be installed, because command 'iscsi-iname' could not be found!
dracut[I]: Module 'iscsi' will not be installed, because command 'iscsiadm' could not be found!
dracut[I]: Module 'iscsi' will not be installed, because command 'iscsid' could not be found!
dracut[I]: Module 'nvmf' will not be installed, because command 'nvme' could not be found!
dracut[I]: Module 'biosdevname' will not be installed, because command 'biosdevname' could not be found!
dracut[I]: Module 'memstrack' will not be installed, because command 'memstrack' could not be found!
dracut[I]: memstrack is not available
dracut[I]: If you need to use rd.memdebug>=4, please install memstrack and procps-ng
dracut[I]: Module 'squash' will not be installed, because command 'mksquashfs' could not be found!
dracut[I]: Module 'squash' will not be installed, because command 'unsquashfs' could not be found!
dracut[I]: Module 'dash' will not be installed, because command 'dash' could not be found!
dracut[I]: Module 'mksh' will not be installed, because command 'mksh' could not be found!
dracut[I]: Module 'systemd-pcrphase' will not be installed, because command '/usr/lib/systemd/systemd-pcrphase' could not be found!
dracut[I]: Module 'systemd-pcrphase' will not be installed, because command '/usr/lib/systemd/systemd-pcrextend' could not be found!
dracut[I]: Module 'busybox' will not be installed, because command 'busybox' could not be found!
dracut[I]: Module 'rngd' will not be installed, because command 'rngd' could not be found!
dracut[I]: Module 'connman' will not be installed, because command 'connmand' could not be found!
dracut[I]: Module 'connman' will not be installed, because command 'connmanctl' could not be found!
dracut[I]: Module 'connman' will not be installed, because command 'connmand-wait-online' could not be found!
dracut[I]: Module 'network-legacy' will not be installed, because command 'dhclient' could not be found!
dracut[I]: 62bluetooth: Could not find any command of '/usr/lib/bluetooth/bluetoothd /usr/libexec/bluetooth/bluetoothd'!
dracut[I]: Module 'lvmmerge' will not be installed, because command 'lvm' could not be found!
dracut[I]: Module 'lvmthinpool-monitor' will not be installed, because command 'lvm' could not be found!
dracut[I]: Module 'dmraid' will not be installed, because command 'dmraid' could not be found!
dracut[I]: Module 'dmsquash-live-ntfs' will not be installed, because command 'ntfs-3g' could not be found!
dracut[I]: Module 'lvm' will not be installed, because command 'lvm' could not be found!
dracut[I]: Module 'mdraid' will not be installed, because command 'mdadm' could not be found!
dracut[I]: Module 'iscsi' will not be installed, because command 'iscsi-iname' could not be found!
dracut[I]: Module 'iscsi' will not be installed, because command 'iscsiadm' could not be found!
dracut[I]: Module 'iscsi' will not be installed, because command 'iscsid' could not be found!
dracut[I]: Module 'nvmf' will not be installed, because command 'nvme' could not be found!
dracut[I]: Module 'memstrack' will not be installed, because command 'memstrack' could not be found!
dracut[I]: memstrack is not available
dracut[I]: If you need to use rd.memdebug>=4, please install memstrack and procps-ng
dracut[I]: Module 'squash' will not be installed, because command 'mksquashfs' could not be found!
dracut[I]: Module 'squash' will not be installed, because command 'unsquashfs' could not be found!
dracut[I]: *** Including module: systemd ***
dracut[I]: *** Including module: systemd-initrd ***
dracut[I]: *** Including module: i18n ***
dracut[I]: *** Including module: btrfs ***
dracut[I]: *** Including module: crypt ***
dracut[I]: *** Including module: dm ***
dracut[D]: Skipping udev rule: 64-device-mapper.rules
dracut[D]: Skipping udev rule: 60-persistent-storage-dm.rules
dracut[D]: Skipping udev rule: 55-dm.rules
dracut[I]: *** Including module: kernel-modules ***
dracut[I]: *** Including module: kernel-modules-extra ***
dracut[D]:   kernel-modules-extra: configuration source "/run/depmod.d" does not exist
dracut[D]:   kernel-modules-extra: configuration source "/etc/depmod.d" does not exist
dracut[D]:   kernel-modules-extra: configuration source "/lib/depmod.d" does not exist
dracut[I]: *** Including module: rootfs-block ***
dracut[I]: *** Including module: terminfo ***
dracut[I]: *** Including module: udev-rules ***
dracut[D]: Skipping udev rule: 70-persistent-net.rules
dracut[I]: *** Including module: dracut-systemd ***
dracut[I]: *** Including module: usrmount ***
dracut[I]: *** Including module: base ***
dracut[I]: *** Including module: fs-lib ***
dracut[I]: *** Including module: shutdown ***
dracut[I]: *** Including modules done ***
dracut[I]: *** Installing kernel module dependencies ***
dracut[I]: *** Installing kernel module dependencies done ***
dracut[I]: *** Resolving executable dependencies ***
dracut[I]: *** Resolving executable dependencies done ***
dracut[I]: *** Hardlinking files ***
Comment 2 MrSnivvel 2024-01-28 15:41:17 UTC
Created attachment 883460 [details]
Files in /var/tmp/dracut.LXc440 during hardlinking stalled stage
Comment 3 MrSnivvel 2024-01-28 15:42:27 UTC
/etc/dracut.conf:

# PUT YOUR CONFIG IN separate files
# in /etc/dracut.conf.d named "<name>.conf"
# SEE man dracut.conf(5) for options
add_dracutmodules+=" btrfs crypt dm rootfs-block systemd "
uefi="yes"
early_microcode="yes"
compress="bzip2"
kernel_cmdline+=" crypt_root=PARTUUID=32d41652-0685-8b49-a887-a44a062710d3 root=UUID=33f80e48-b782-4cee-b191-7ed7ef72b534 init=/usr/lib/systemd/systemd rd.luks.uuid=9b3a31fb-b603-4e07-8fe3-5c8794afb980 rd.lvm=0 rd.md=0 rd.dm=0 "
use_fstab="yes"
hostonly="yes"
hostonly_mode="strict"
Comment 4 MrSnivvel 2024-01-28 15:44:02 UTC
sys-kernel/installkernel-18-r1::gentoo was built with the following:
USE="dracut uki -grub -systemd -ukify" ABI_X86="(64)"

/etc/kernel/install.conf:

layout=
uki_generator=
initrd_generator=
Comment 5 MrSnivvel 2024-01-28 17:53:31 UTC
If I try to downgrade to the previous version of dracut, it's blocked by installkernel-18-r1 and only installkernel-12 as available so I'm not sure if I want to or should revert back to that version of the dependency.

[ebuild     UD ] sys-kernel/dracut-060_pre20231030-r2::gentoo [060_pre20240104::gentoo] USE="(-selinux) (-test)" 0 KiB

Total: 1 package (1 downgrade), Size of downloads: 0 KiB

!!! Multiple package instances within a single package slot have been pulled
!!! into the dependency graph, resulting in a slot conflict:

sys-kernel/dracut:0

  (sys-kernel/dracut-060_pre20231030-r2:0/0::gentoo, ebuild scheduled for merge) USE="(-selinux) (-test)" ABI_X86="(64)" pulled in by
    =sys-kernel/dracut-060_pre20231030-r2 (Argument)

  (sys-kernel/dracut-060_pre20240104:0/0::gentoo, installed) USE="(-selinux) (-test)" ABI_X86="(64)" pulled in by
    >=sys-kernel/dracut-060_pre20240104 required by (sys-kernel/installkernel-18-r1:0/0::gentoo, installed) USE="dracut uki -grub -systemd -ukify" ABI_X86="(64)"
Comment 6 Mike Gilbert gentoo-dev 2024-01-28 18:14:41 UTC
Does it complete successfully with dracut --nohardlink or do_hardlink="no" in dracut.conf?
Comment 7 Nowa Ammerlaan gentoo-dev 2024-01-28 18:28:45 UTC
(In reply to MrSnivvel from comment #5)
> If I try to downgrade to the previous version of dracut, it's blocked by
> installkernel-18-r1 and only installkernel-12 as available so I'm not sure
> if I want to or should revert back to that version of the dependency.

It would be useful to know if this still occurs with the older versions, you can temporarily force the downgrade with --ignore-world or if that doesn't work --nodeps.

The upstream changes between the versions are small, so if this does turn out to work with the older versions we can probably find out which commit is responsible relatively easily.
Comment 8 Nowa Ammerlaan gentoo-dev 2024-01-28 18:32:23 UTC
Another thing to try is 'dracut --stdlog 6' which should make it more verbose in this phase according to https://github.com/dracutdevs/dracut/issues/2372
Comment 9 MrSnivvel 2024-01-28 20:26:24 UTC
Created attachment 883494 [details]
Dracut without --nohardlink

The only way I got dracut to work was with the --nohardlink argument as suggested, and this worked with both 060_pre20240104 and 060_pre20231030-r2 versions of dracut.  Reverting to 060_pre20231030-r2 did not work with when it was defaulting to doing hardlinks.  The debug argument of --stdlog 6 made no difference on the console output.

Also, the md5sums of the to two versions of UKI kernels built with both dracuts differed but file sizes are showing to be the same.
Comment 10 Nowa Ammerlaan gentoo-dev 2024-01-30 15:30:02 UTC
(In reply to MrSnivvel from comment #9)
> Also, the md5sums of the to two versions of UKI kernels built with both
> dracuts differed but file sizes are showing to be the same.

By default the initramfs (and therefore the UKI) are not reproducible, as I understand it this has to do with timestamps and maybe other things too. If you want dracut to do a little extra work and make it reproducible, then you want to set "reproducible=yes" in dracut.conf and/or add the --reproducible argument.

About your hardlinking problem, I think you should report this upstream because I have no clue what might be causing this.
Comment 11 Mike Gilbert gentoo-dev 2024-01-30 16:17:45 UTC
Note that dracut simply calls the "hardlink" command as provided by util-linux. If there's a bug here, it is probably in util-linux, not dracut.
Comment 12 Mike Gilbert gentoo-dev 2024-01-30 16:19:54 UTC
Please provide the version of util-linux.

Also, if you can create a tarball of the dracut temp directory, I can see if I can reproduce the issue locally.
Comment 13 Mike Gilbert gentoo-dev 2024-01-30 16:31:43 UTC
Another thing to try: run the "hardlink" command on the dracut temp dir. If it stalls, retry using "strace" to see what it is doing at the time of the stall.
Comment 14 MrSnivvel 2024-01-30 23:49:06 UTC
(In reply to Mike Gilbert from comment #12)
> Please provide the version of util-linux.
> 
> Also, if you can create a tarball of the dracut temp directory, I can see if
> I can reproduce the issue locally.

sys-apps/coreutils-9.4 was used.  I see there's now a -r1 bump in the tree right now so might try with that after seeing what changed for it.

I'll see about getting the rest of the things you asked about tonight.
Comment 15 Mike Gilbert gentoo-dev 2024-01-31 00:10:45 UTC
(In reply to MrSnivvel from comment #14)
> sys-apps/coreutils-9.4 was used.

I did not ask about coreutils. I asked about util-linux, which provides the "hardlink" command.
Comment 16 MrSnivvel 2024-01-31 00:33:50 UTC
(In reply to Mike Gilbert from comment #15)
> (In reply to MrSnivvel from comment #14)
> > sys-apps/coreutils-9.4 was used.
> 
> I did not ask about coreutils. I asked about util-linux, which provides the
> "hardlink" command.

sys-apps/util-linux-2.39.3-r1
Comment 17 MrSnivvel 2024-01-31 02:13:13 UTC
(In reply to Mike Gilbert from comment #12)
> Also, if you can create a tarball of the dracut temp directory, I can see if
> I can reproduce the issue locally.

https://www.dropbox.com/scl/fi/pstdfo7f886rlvwkukz03/dracut-hardlink-dir.tar.xz?rlkey=yycozksw3fqoh1ss2c2f3fq02&dl=0   Link to the tarball.xz file of the dracut directory
Comment 18 Mike Gilbert gentoo-dev 2024-01-31 02:26:45 UTC
Unfortunately, I'm unable to reproduce the issue by running hardlink after unpacking that tarball.