geninitrd: --with-bootsplash causes kernel panic with initramfs

Bug #368264 reported by vip on 2009-04-27
2
Affects Status Importance Assigned to Milestone
PLD Linux
Undecided
Elan Ruusamäe

Bug Description

When generating initramfs geninitrd with bootsplash the kernel is in panic with unknown rootfs.
Same initrd without --with-bootsplash works well.

Following <shadzik>, with initramfs (default in pld):
bootsplash should be generated, named bootsplash, copied to initramfs' rootdir and finally, generated initramfs

e.g.
/bin/splash.bin -s -f /etc/bootsplash/themes/livecd/config/bootsplash-1024x768.cfg > $MOUNTDIR/bootsplash
and then find . | cpio stuff

Elan Ruusamäe (glen666) wrote :

dude, where's the version?!

anyway in mod-bootsplash.sh there are lines:

    for res in $BOOT_SPLASH_RESOLUTIONS; do
        if [ -f "/etc/bootsplash/themes/$THEME/config/bootsplash-$res.cfg" ]; then
            /bin/splash.bin -s -f "/etc/bootsplash/themes/$THEME/config/bootsplash-$res.cfg" >> "$target" && \
            debug "Added $res $THEME theme to initrd."
        else
            warn "/etc/bootsplash/themes/$THEME/config/bootsplash-$res.cfg doesn't exist, skipped"
        fi
    done

and $target being the final .gz file.

nevertheless, regenerate initrd with -v option and show the output.

vip (piotr-budny) wrote :

Sorry, I forgot..
Here's the verbose:

[11:36 root@dzibutti:/boot]# geninitrd -f -v splash.gz 2.6.29.1-desktop-pae-1 --with-bootsplash
geninitrd: # $Id: geninitrd 10324 2009-04-07 16:05:41Z glen $
geninitrd: Using _lib: lib
geninitrd: Using initrd_dir: /usr/lib/initrd
geninitrd: find_tool: found /usr/lib/initrd/initrd-busybox
geninitrd: find_tool: did not found any of: /usr/lib/initrd/cryptsetup /sbin/cryptsetup-initrd
geninitrd: find_tool: did not found any of: /usr/lib/initrd/dmraid /sbin/dmraid-initrd
geninitrd: find_tool: did not found any of: /usr/lib/initrd/lvm /sbin/initrd-lvm
geninitrd: find_tool: found /usr/lib/initrd/mdassemble
geninitrd: find_tool: did not found any of: /usr/lib/initrd/blkid /sbin/initrd-blkid
geninitrd: find_tool: did not found any of: /usr/lib/initrd/udevd /sbin/initrd-udevd
geninitrd: find_tool: did not found any of: /usr/lib/initrd/udevadm /sbin/initrd-udevadm
geninitrd: find_tool: did not found any of: /usr/lib/initrd/resume /usr/lib/suspend/resume /usr/sbin/resume
geninitrd: find_tool: did not found any of: /usr/lib/initrd/v86d /sbin/v86d
geninitrd: Using modprobe -c to get modules config
geninitrd: Using /dev/sda1 as device for rootfs
geninitrd: Finding modules for device path /dev/sda1
geninitrd: Finding SCSI modules using scsi_hostadapter
geninitrd: Building initrd...
geninitrd: + cp /usr/lib/initrd/initrd-busybox /tmp/initrd.smxvt8/bin/initrd-busybox
geninitrd: Loading module [exportfs]
geninitrd: Loading module [xfs]
geninitrd: Loading module [scsi_mod]
geninitrd: Loading module [crc-t10dif]
geninitrd: Loading module [sd_mod]
geninitrd: Loading module [scsi_wait_scan]
geninitrd: Loading module [libata]
geninitrd: Loading module [ahci]
geninitrd: Loading module [ata_piix]
geninitrd: Adding rootfs finding based on kernel cmdline root= option support.
geninitrd: + cp /dev/sda1 /tmp/initrd.smxvt8/dev/sda1
geninitrd: Creating initramfs image /tmp/initrd.img-4zQwq6
geninitrd: finding compressor: lzma bzip2 gzip (via yes)
geninitrd: using gzip for compressor (fallback)
geninitrd: Compressing splash.gz with gzip
geninitrd: Minimum RAM size that could be used for splash.gz is: ramdisk_size=1024
geninitrd: Generating bootsplash
geninitrd: Added 1024x768 blackbyshad theme to initrd.

when I moved:

if is_yes "$BOOT_SPLASH"; then
    initrd_gen_bootsplash "$target"
fi

before the

debug "Creating $INITRDFS image $IMAGE"

and changed
     initrd_gen_bootsplash "$target"
to
    initrd_gen_bootsplash "$DESTDIR/bootsplash"

it seemed to work, but don't know if it is proper resolution and doesn't break romfs.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers