** Description changed: - Concatenating multiple initrds works fine with gzipped initrds. - (microcode+gzip+gzip) => the kernel properly decompresses that + Updated description: - With lz4, it can't decompress anything after the first lz4: - (microcode+lz4+whatever) => it doesn't decompress whatever. + The kernel supports loading multiple initrds, like: [cpio microcode, + gzip initrd.img]. + + Appending yet another initrd after that only works for selected + compressions, not all of them. I'm not sure if this is a bug or a + feature request. + + So for example, this works: [cpio microcode, xz initrd.img, gzip extra.img] + And this doesn't: [cpio microcode, lz4 initrd.img, gzip extra.img] To reproduce: Get vmlinuz and initrd.img from an eoan daily build and put them in a directory. - Create an lz4 (or gzip or uncompressed cpio, it doesn't matter): + Create a compressed extra.img: # date > date.txt - # echo date.txt | cpio -oH newc | lz4 > date.img + # echo date.txt | cpio -oH newc | gzip > extra.img Concatenate them: - # cat initrd.img.original date.img > initrd.img + # cat initrd.img.original extra.img > initrd.img Boot them: # kvm -m 512 -kernel vmlinuz -initrd initrd.img -append rdinit=/bin/sh Then inside kvm: # ls /date.txt - The additional file doesn't exist. + The date.txt file doesn't exist when initrd.img is lz4, while it appears + if it's xz. `dmesg | grep -i initramfs` reports: Trying to unpack rootfs image as initramfs... Initramfs unpacking failed: Decoding failed
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1840945 Title: Mixed compression initrds partially work To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1840945/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
