Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 428232 - sys-kernel/dracut-022 creates broken initrd
Summary: sys-kernel/dracut-022 creates broken initrd
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Amadeusz Żołnowski (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-07-26 22:57 UTC by Dennis Schridde
Modified: 2012-08-20 21:33 UTC (History)
2 users (show)

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


Attachments
dracut log (dracut-bug,8.87 KB, text/plain)
2012-07-27 16:00 UTC, Nikoli
Details
initramfs diff (dracut-022[-optimization] and dracut-9999[optimization]) (diff,2.30 KB, text/plain)
2012-07-30 16:21 UTC, Nikoli
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dennis Schridde 2012-07-26 22:57:34 UTC
This command worked in dracut-019 and appears to fail with dracut-022 due to dracut-install (without aborting):
# dracut --xz --force '' '3.5.0-gentoo'
I: *** Including module: dash ***
I: *** Including module: i18n ***
I: *** Including module: btrfs ***
I: *** Including module: kernel-modules ***
I: Omitting driver nfs_acl
I: Omitting driver nfs
I: Omitting driver nfs_layout_nfsv41_files
I: Omitting driver blocklayoutdriver
I: Omitting driver nfsd
I: Omitting driver lockd
I: *** Including module: resume ***
I: *** Including module: rootfs-block ***
I: *** Including module: terminfo ***
I: *** Including module: udev-rules ***
I: *** Including module: virtfs ***
I: *** Including module: usrmount ***
I: *** Including module: base ***
I: *** Including module: fs-lib ***
I: *** Including module: shutdown ***
I: *** Including modules done ***
I: *** Installing kernel module dependencies and firmware ***
I: *** Installing kernel module dependencies and firmware done ***
I: *** Resolving executable dependencies ***
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/usr/bin/setfont'' for '/var/tmp/initramfs.hSk1C4/usr/bin/setfont'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/usr/bin/loadkeys'' for '/var/tmp/initramfs.hSk1C4/usr/bin/loadkeys'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/usr/bin/kbd_mode'' for '/var/tmp/initramfs.hSk1C4/usr/bin/kbd_mode'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/usr/bin/udevadm'' for '/var/tmp/initramfs.hSk1C4/usr/bin/udevadm'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/usr/bin/kmod'' for '/var/tmp/initramfs.hSk1C4/usr/bin/kmod'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/usr/bin/flock'' for '/var/tmp/initramfs.hSk1C4/usr/bin/flock'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/usr/bin/setsid'' for '/var/tmp/initramfs.hSk1C4/usr/bin/setsid'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/usr/bin/less'' for '/var/tmp/initramfs.hSk1C4/usr/bin/less'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/usr/sbin/resume'' for '/var/tmp/initramfs.hSk1C4/usr/sbin/resume'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/usr/sbin/kexec'' for '/var/tmp/initramfs.hSk1C4/usr/sbin/kexec'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/usr/lib64/systemd/systemd-udevd'' for '/var/tmp/initramfs.hSk1C4/usr/lib64/systemd/systemd-udevd'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/dash'' for '/var/tmp/initramfs.hSk1C4/bin/dash'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/stty'' for '/var/tmp/initramfs.hSk1C4/bin/stty'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/gzip'' for '/var/tmp/initramfs.hSk1C4/bin/gzip'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/umount'' for '/var/tmp/initramfs.hSk1C4/bin/umount'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/cat'' for '/var/tmp/initramfs.hSk1C4/bin/cat'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/uname'' for '/var/tmp/initramfs.hSk1C4/bin/uname'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/basename'' for '/var/tmp/initramfs.hSk1C4/bin/basename'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/mount'' for '/var/tmp/initramfs.hSk1C4/bin/mount'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/mknod'' for '/var/tmp/initramfs.hSk1C4/bin/mknod'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/mkdir'' for '/var/tmp/initramfs.hSk1C4/bin/mkdir'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/sleep'' for '/var/tmp/initramfs.hSk1C4/bin/sleep'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/chroot'' for '/var/tmp/initramfs.hSk1C4/bin/chroot'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/sed'' for '/var/tmp/initramfs.hSk1C4/bin/sed'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/ls'' for '/var/tmp/initramfs.hSk1C4/bin/ls'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/cp'' for '/var/tmp/initramfs.hSk1C4/bin/cp'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/mv'' for '/var/tmp/initramfs.hSk1C4/bin/mv'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/dmesg'' for '/var/tmp/initramfs.hSk1C4/bin/dmesg'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/rm'' for '/var/tmp/initramfs.hSk1C4/bin/rm'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/ln'' for '/var/tmp/initramfs.hSk1C4/bin/ln'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/mkfifo'' for '/var/tmp/initramfs.hSk1C4/bin/mkfifo'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/bin/readlink'' for '/var/tmp/initramfs.hSk1C4/bin/readlink'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/lib64/udev/ata_id'' for '/var/tmp/initramfs.hSk1C4/lib64/udev/ata_id'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/lib64/udev/cdrom_id'' for '/var/tmp/initramfs.hSk1C4/lib64/udev/cdrom_id'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/lib64/udev/hid2hci'' for '/var/tmp/initramfs.hSk1C4/lib64/udev/hid2hci'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/lib64/udev/scsi_id'' for '/var/tmp/initramfs.hSk1C4/lib64/udev/scsi_id'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/lib64/libnss_files-2.15.so'' for '/var/tmp/initramfs.hSk1C4/lib64/libnss_files-2.15.so'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/sbin/btrfs'' for '/var/tmp/initramfs.hSk1C4/sbin/btrfs'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/sbin/btrfsck'' for '/var/tmp/initramfs.hSk1C4/sbin/btrfsck'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/sbin/blkid'' for '/var/tmp/initramfs.hSk1C4/sbin/blkid'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/sbin/killall5'' for '/var/tmp/initramfs.hSk1C4/sbin/killall5'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/sbin/switch_root'' for '/var/tmp/initramfs.hSk1C4/sbin/switch_root'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/sbin/fsck'' for '/var/tmp/initramfs.hSk1C4/sbin/fsck'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/sbin/fsck.cramfs'' for '/var/tmp/initramfs.hSk1C4/sbin/fsck.cramfs'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/sbin/e2fsck'' for '/var/tmp/initramfs.hSk1C4/sbin/e2fsck'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/sbin/fsck.minix'' for '/var/tmp/initramfs.hSk1C4/sbin/fsck.minix'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/sbin/dosfsck'' for '/var/tmp/initramfs.hSk1C4/sbin/dosfsck'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/sbin/reiserfsck'' for '/var/tmp/initramfs.hSk1C4/sbin/reiserfsck'
dracut-install: ERROR: failed to install '/var/tmp/initramfs.hSk1C4/sbin/halt'' for '/var/tmp/initramfs.hSk1C4/sbin/halt'
I: *** Resolving executable dependencies done***
I: *** Creating image file ***
I: *** Creating image file done ***
I: Wrote /boot/initramfs-3.5.0-gentoo.img:
I: -rwxr-xr-x 1 root root 4623528 Jul 27 00:54 /boot/initramfs-3.5.0-gentoo.img

Reproducible: Always
Comment 1 Dennis Schridde 2012-07-26 23:26:29 UTC
The initrd is indeed broken - the kernel panics because init is missing.

So there are two issues here:
1) dracut-install is broken
2) dracut does not abort when dracut-install fails

In addition I even think that dracut should run a sanity check on the initrd, to see whether all files it believes should be included are actually included.
Comment 2 Amadeusz Żołnowski (RETIRED) gentoo-dev 2012-07-27 12:29:00 UTC
I have committed some fix wrt dracut-install. Please resync (after some time until change reaches mirrors) and try to rebuild and let me know if the bug still occurs.
Comment 3 Dennis Schridde 2012-07-27 14:24:54 UTC
It appears the issue is not fixed in sys-kernel/dracut-022@27/07/12 (CVS Header: v 1.3 2012/07/27 12:25:19 aidecoe).
Comment 4 Nikoli 2012-07-27 16:00:00 UTC
I have same problem when USE optimization is enabled.
Comment 5 Nikoli 2012-07-27 16:00:50 UTC
Created attachment 319424 [details]
dracut log

Disabling USE optimization solved my problem.

Portage 2.1.10.65 (hardened/linux/amd64, gcc-4.5.3, glibc-2.14.1-r3, 3.4.6-hardened x86_64)
=================================================================
                        System Settings
=================================================================
Timestamp of tree: Fri, 27 Jul 2012 13:15:01 +0000
app-shells/bash:          4.2_p20
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.3-r2
sys-apps/baselayout:      2.1-r1
sys-apps/openrc:          0.9.8.4
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.68
sys-devel/automake:       1.11.1
sys-devel/binutils:       2.21.1-r1
sys-devel/gcc:            4.5.3-r2
sys-devel/gcc-config:     1.6
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r1
sys-kernel/linux-headers: 3.4-r2 (virtual/os-headers)
sys-libs/glibc:           2.14.1-r3
Repositories: gentoo nikoli
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=core2 -mtune=generic -mavx -maes -mpclmul -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa /usr/share/themes/oxygen-gtk/gtk-2.0"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=core2 -mtune=generic -mavx -maes -mpclmul -O2 -pipe"
DISTDIR="/var/package-manager/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles news parallel-fetch parse-eapi-ebuild-head protect-owned sandbox sfperms strict test unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://mirror.yandex.ru/gentoo-distfiles/"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="ru en"
MAKEOPTS="-j5"
PKGDIR="/var/package-manager/packages/corei7-avx_hardened"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTDIR="/var/package-manager/portage"
PORTDIR_OVERLAY="/var/lib/layman/nikoli"
USE="X a52 aac acl acpi aes-ni akonadi alsa amd64 amr atm audiofile avx bash-completion bzip2 cairo caps cdda cddb cdio cdparanoia cdr celt cli consolekit cracklib crypt css cups cxx dbus djvu dri dts dv dvd dvdr encode exif fat ffmpeg flac fluidsynth fontconfig fortran gd geoip gif gimp gmp gnutls gphoto2 gpm graphviz gsm gstreamer gtk handbook hardened iconv icu id3tag idn ilbc imagemagick imap imlib ios ipod ipv6 jbig jpeg jpeg2k justify kde kipi kontact lame laptop lcms libass libnotify libproxy libsamplerate lm_sensors lzma lzo mac mad matroska mikmod mmx mmxext mng modplug modules mp3 mp4 mpeg mtp mudflap multilib musepack musicbrainz ncurses nls nptl nptlonly ntfs ogg openal openexr opengl openmp pam pango pax_kernel pcre pdf pg-intdatetime phonon plasma pm-utils png policykit postscript pppd qt3support qt4 quicktime rar raw readline reiserfs replaygain rtmp sasl scanner schroedinger session sid smp sndfile socks5 speex spell sqlite sse sse2 sse3 sse4_1 ssl ssse3 startup-notification svg symlink sysfs taglib theora threads thumbnail tiff truetype tta udev unicode upnp usb v4l v4l2 vaapi vcd vorbis vpx wavpack webkit webp wma wmf x264 xattr xcb xcomposite xface xinerama xml xmp xorg xpm xscreensaver xv xvid xz zip zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="*" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="ru en" NGINX_MODULES_HTTP="access auth_basic autoindex fastcgi gzip rewrite" PHP_TARGETS="php5-3" PYTHON_TARGETS="python3_2 python2_7" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="intel i965 vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON

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

sys-kernel/dracut-022 was built with the following:
USE="(multilib) test -debug -device-mapper -net -optimization (-selinux)" DRACUT_MODULES="-biosdevname -bootchart -btrfs -caps -crypt -crypt-gpg -dmraid -dmsquash-live -gensplash -iscsi -livenet -lvm -mdraid -multipath -nbd -nfs -plymouth -ssh-client -syslog"
Comment 6 Dennis Schridde 2012-07-28 07:43:14 UTC
(In reply to comment #5)
> Disabling USE optimization solved my problem.
Confirming that USE=-optimization allows to build an initrd without the abovementioned errors.
Comment 7 Amadeusz Żołnowski (RETIRED) gentoo-dev 2012-07-30 10:29:00 UTC
Attach log with --debug appended, please.
Comment 8 Amadeusz Żołnowski (RETIRED) gentoo-dev 2012-07-30 10:29:18 UTC
(with +optimization, of course)
Comment 9 Amadeusz Żołnowski (RETIRED) gentoo-dev 2012-07-30 10:32:29 UTC
@Dennis: Do you have hardened sources, too?
Comment 10 Amadeusz Żołnowski (RETIRED) gentoo-dev 2012-07-30 10:40:36 UTC
@Nikoli, @Dennis: Do you have /var/tmp mounted with -noexec by chance?
Comment 11 Amadeusz Żołnowski (RETIRED) gentoo-dev 2012-07-30 11:06:45 UTC
Could you also try sys-kernel/dracut-9999 from aidecoe overlay?
Comment 12 Dennis Schridde 2012-07-30 11:57:16 UTC
(In reply to comment #7)
> Attach log with --debug appended, please.
dracut --debug ... ?

(In reply to comment #9)
> @Dennis: Do you have hardened sources, too?
No, I am using gentoo-sources-3.5.0.

(In reply to comment #10)
> @Nikoli, @Dennis: Do you have /var/tmp mounted with -noexec by chance?
Likely -- I will have a look again when I am at home.
Comment 13 Amadeusz Żołnowski (RETIRED) gentoo-dev 2012-07-30 12:38:03 UTC
(In reply to comment #12)
> (In reply to comment #7)
> > Attach log with --debug appended, please.
> dracut --debug ... ?

Yes,

# dracut --debug --xz --force '' '3.5.0-gentoo'

in your case. But this is no longer necessary if you will test sys-kernel/dracut-9999 from aidecoe overlay and it will work for you. There's possible fix for the issue there.
Comment 14 Nikoli 2012-07-30 13:01:06 UTC
> @Nikoli, @Dennis: Do you have /var/tmp mounted with -noexec by chance?

Yes, but /var/tmp/portage is 'exec':
/dev/mapper/l-var on /var type ext4 (rw,noexec,nosuid,nodev,relatime,commit=0)
none on /tmp type tmpfs (rw,noexec,nosuid,nodev,relatime,size=2048M,nr_inodes=1M)
none on /var/tmp/portage type tmpfs (rw,nosuid,nodev,relatime,size=16G)
Comment 15 Nikoli 2012-07-30 16:21:00 UTC
Created attachment 319736 [details]
initramfs diff (dracut-022[-optimization] and dracut-9999[optimization])

9999 seems to work almost fine, but why it installs lib64/libdevmapper.so.1.02 and sbin/dmsetup?
Also dracut package now has /usr/lib64/dracut/modules.d/91crypt-loop/ and /usr/lib64/dracut/modules.d/95cifs/, but i have no cifs in userspace or kernel
Comment 16 Amadeusz Żołnowski (RETIRED) gentoo-dev 2012-07-30 20:28:42 UTC
@Dennis, @Nikoli: Thank you for the report and testing!

@Dennis: Please confirm, that 022-r1 with +optimization solves the problem for you.

+*dracut-022-r1 (30 Jul 2012)
+
+  30 Jul 2012; Amadeusz Żołnowski <aidecoe@gentoo.org>
+  +files/022-0016-dracut.sh-test-if-we-can-lazy-resolve-.patch,
+  +dracut-022-r1.ebuild:
+  Rev-bump. Fixes bug #428232.
+
Comment 17 Nikoli 2012-07-30 22:30:38 UTC
dracut-022-r1 works fine with both USE optimization disabled and enabled. Used 'xzcat /boot/initramfs.img |cpio -i' and 'rsync -navc --delete-after ../1/ ./|grep -v /$' for checking - nothing changed after enabling optimization. But i did not try rebooting.
Comment 18 Amadeusz Żołnowski (RETIRED) gentoo-dev 2012-08-20 21:33:40 UTC
Nikoli, thanks!