dracutdevs / dracut

dracut the event driven initramfs infrastructure
https://github.com/dracutdevs/dracut/wiki
GNU General Public License v2.0
598 stars 397 forks source link

test: ide-hd not available on many architectures #2493

Open bdrung opened 1 year ago

bdrung commented 1 year ago

Describe the bug

I like to run the upstream test suite on all available Debian/Ubuntu architectures. After applying the patches from https://github.com/dracutdevs/dracut/pull/2487 many architectures fail due to not available IDE support in QEMU.

arm64

run-qemu: /usr/bin/qemu-system-arm64 '-cpu' 'max' '-M' 'virt,gic-version=max' '-smp' '2' '-m' '512' '-nodefaults' '-vga' 'none' '-display' 'none' '-no-reboot' '-device' 'virtio-rng-pci' '-serial' 'stdio' -kernel /boot/vmlinuz-6.3.0-7-generic '-drive' 'if=none,format=raw,file=test/marker.img,id=drive-sata0' '-device' 'ide-hd,bus=ide.0,drive=drive-sata0,id=sata0,model=disk,serial=marker' '-drive' 'if=none,format=raw,file=test/root.img,id=drive-sata1' '-device' 'ide-hd,bus=ide.1,drive=drive-sata1,id=sata1,model=disk,serial=root' '-append' 'root=/dev/dracut/root rw rootfstype=ext3 quiet console=ttyS0,115200n81 selinux=0' '-initrd' 'test/initramfs.makeroot'
qemu-system-arm64: -device ide-hd,bus=ide.0,drive=drive-sata0,id=sata0,model=disk,serial=marker: Bus 'ide.0' not found

armhf

run-qemu: /usr/bin/qemu-system-arm '-cpu' 'max' '-M' 'virt' '-smp' '2' '-m' '512' '-nodefaults' '-vga' 'none' '-display' 'none' '-no-reboot' '-device' 'virtio-rng-pci' '-serial' 'stdio' -kernel /boot/vmlinuz-6.3.0-7-generic '-drive' 'if=none,format=raw,file=test/marker.img,id=drive-sata0' '-device' 'ide-hd,bus=ide.0,drive=drive-sata0,id=sata0,model=disk,serial=marker' '-drive' 'if=none,format=raw,file=test/raid-1.img,id=drive-sata1' '-device' 'ide-hd,bus=ide.1,drive=drive-sata1,id=sata1,model=disk,serial=raid1' '-drive' 'if=none,format=raw,file=test/raid-2.img,id=drive-sata2' '-device' 'ide-hd,bus=ide.2,drive=drive-sata2,id=sata2,model=disk,serial=raid2' '-drive' 'if=none,format=raw,file=test/raid-3.img,id=drive-sata3' '-device' 'ide-hd,bus=ide.3,drive=drive-sata3,id=sata3,model=disk,serial=raid3' '-drive' 'if=none,format=raw,file=test/raid-4.img,id=drive-sata4' '-device' 'ide-hd,bus=ide.4,drive=drive-sata4,id=sata4,model=disk,serial=raid4' '-append' 'root=/dev/fakeroot rw quiet console=ttyS0,115200n81 selinux=0' '-initrd' 'test/initramfs.makeroot'
708s qemu-system-arm: -device ide-hd,bus=ide.0,drive=drive-sata0,id=sata0,model=disk,serial=marker: Bus 'ide.0' not found

ppc64el

run-qemu: /usr/bin/qemu-system-ppc64el '-cpu' 'max' '-M' 'cap-ccf-assist=off,cap-cfpc=broken,cap-ibs=broken,cap-sbbc=broken' '-smp' '2' '-m' '512' '-nodefaults' '-vga' 'none' '-display' 'none' '-no-reboot' '-device' 'virtio-rng-pci' '-serial' 'stdio' -kernel /boot/vmlinux-6.3.0-7-generic '-drive' 'if=none,format=raw,file=test/marker.img,id=drive-sata0' '-device' 'ide-hd,bus=ide.0,drive=drive-sata0,id=sata0,model=disk,serial=marker' '-drive' 'if=none,format=raw,file=test/root.img,id=drive-sata1' '-device' 'ide-hd,bus=ide.1,drive=drive-sata1,id=sata1,model=disk,serial=root' '-append' 'root=/dev/dracut/root rw rootfstype=ext4 quiet console=ttyS0,115200n81 selinux=0' '-initrd' 'test/initramfs.makeroot'
qemu-system-ppc64el: -device ide-hd,bus=ide.0,drive=drive-sata0,id=sata0,model=disk,serial=marker: Bus 'ide.0' not found

s390x

run-qemu: /usr/bin/qemu-system-s390x '-cpu' 'max' '-smp' '2' '-m' '512' '-nodefaults' '-vga' 'none' '-display' 'none' '-no-reboot' '-device' 'virtio-rng-pci' '-serial' 'stdio' -kernel /boot/vmlinuz-6.3.0-7-generic '-drive' 'if=none,format=raw,file=test/marker.img,id=drive-sata0' '-device' 'ide-hd,bus=ide.0,drive=drive-sata0,id=sata0,model=disk,serial=marker' '-drive' 'if=none,format=raw,file=test/raid-1.img,id=drive-sata1' '-device' 'ide-hd,bus=ide.1,drive=drive-sata1,id=sata1,model=disk,serial=raid1' '-drive' 'if=none,format=raw,file=test/raid-2.img,id=drive-sata2' '-device' 'ide-hd,bus=ide.2,drive=drive-sata2,id=sata2,model=disk,serial=raid2' '-drive' 'if=none,format=raw,file=test/raid-3.img,id=drive-sata3' '-device' 'ide-hd,bus=ide.3,drive=drive-sata3,id=sata3,model=disk,serial=raid3' '-drive' 'if=none,format=raw,file=test/raid-4.img,id=drive-sata4' '-device' 'ide-hd,bus=ide.4,drive=drive-sata4,id=sata4,model=disk,serial=raid4' '-append' 'root=/dev/fakeroot rw quiet console=ttyS0,115200n81 selinux=0' '-initrd' 'test/initramfs.makeroot'
qemu-system-s390x: -device ide-hd,bus=ide.0,drive=drive-sata0,id=sata0,model=disk,serial=marker: 'ide-hd' is not a valid device model name

Distribution used Debian/Ubuntu

Dracut version 059

bdrung commented 1 year ago

The initramfs-tools package in Ubuntu uses virtio for the QEMU drive to run the test suite on all available architectures.

See https://git.launchpad.net/~ubuntu-core-dev/ubuntu/+source/initramfs-tools/tree/debian/tests/test-common and https://git.launchpad.net/~ubuntu-core-dev/ubuntu/+source/initramfs-tools/tree/debian/tests/run-qemu

LaszloGombos commented 1 year ago

I support switching to virtio from ide-hd for all relevant test cases.