From: Andrea Bolognani Date: Tue, 16 Jan 2024 14:51:31 +0000 (+0100) Subject: tests: Add {aarch64,riscv64}-virt-headless-mmio X-Git-Tag: v10.1.0-rc1~233 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d9c261fdb6efc3101d89685692f97268776f7674;p=thirdparty%2Flibvirt.git tests: Add {aarch64,riscv64}-virt-headless-mmio Even though virtio-mmio is no longer the default on either architecture, and likely nobody is using it at this point, we still provide a way to opt into virtio-mmio usage and want to keep existing guests working. Add explicit test suite coverage for this scenario. Signed-off-by: Andrea Bolognani Reviewed-by: Peter Krempa Reviewed-by: Ján Tomko --- diff --git a/tests/qemuxml2argvdata/aarch64-virt-headless-mmio.aarch64-latest.args b/tests/qemuxml2argvdata/aarch64-virt-headless-mmio.aarch64-latest.args new file mode 100644 index 0000000000..f546cf33c7 --- /dev/null +++ b/tests/qemuxml2argvdata/aarch64-virt-headless-mmio.aarch64-latest.args @@ -0,0 +1,48 @@ +LC_ALL=C \ +PATH=/bin \ +HOME=/var/lib/libvirt/qemu/domain--1-guest \ +USER=test \ +LOGNAME=test \ +XDG_DATA_HOME=/var/lib/libvirt/qemu/domain--1-guest/.local/share \ +XDG_CACHE_HOME=/var/lib/libvirt/qemu/domain--1-guest/.cache \ +XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-guest/.config \ +/usr/bin/qemu-system-aarch64 \ +-name guest=guest,debug-threads=on \ +-S \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-guest/master-key.aes"}' \ +-blockdev '{"driver":"file","filename":"/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \ +-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"raw","file":"libvirt-pflash0-storage"}' \ +-blockdev '{"driver":"file","filename":"/path/to/guest_VARS.raw","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \ +-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"raw","file":"libvirt-pflash1-storage"}' \ +-machine virt-4.0,usb=off,gic-version=2,dump-guest-core=off,memory-backend=mach-virt.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format,acpi=on \ +-accel tcg \ +-cpu cortex-a15 \ +-m size=4194304k \ +-object '{"qom-type":"memory-backend-ram","id":"mach-virt.ram","size":4294967296}' \ +-overcommit mem-lock=off \ +-smp 4,sockets=4,cores=1,threads=1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \ +-mon chardev=charmonitor,id=monitor,mode=control \ +-rtc base=utc \ +-no-shutdown \ +-boot strict=on \ +-device '{"driver":"virtio-serial-device","id":"virtio-serial0"}' \ +-blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.qcow2","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \ +-blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"qcow2","file":"libvirt-1-storage"}' \ +-device '{"driver":"virtio-blk-device","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ +-netdev '{"type":"user","id":"hostnet0"}' \ +-device '{"driver":"virtio-net-device","netdev":"hostnet0","id":"net0","mac":"52:54:00:09:a4:37"}' \ +-chardev pty,id=charserial0 \ +-serial chardev:charserial0 \ +-chardev socket,id=charchannel0,fd=1729,server=on,wait=off \ +-device '{"driver":"virtserialport","bus":"virtio-serial0.0","nr":1,"chardev":"charchannel0","id":"channel0","name":"org.qemu.guest_agent.0"}' \ +-audiodev '{"id":"audio1","driver":"none"}' \ +-device '{"driver":"virtio-balloon-device","id":"balloon0"}' \ +-object '{"qom-type":"rng-random","id":"objrng0","filename":"/dev/urandom"}' \ +-device '{"driver":"virtio-rng-device","rng":"objrng0","id":"rng0"}' \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ +-msg timestamp=on diff --git a/tests/qemuxml2argvdata/aarch64-virt-headless-mmio.xml b/tests/qemuxml2argvdata/aarch64-virt-headless-mmio.xml new file mode 100644 index 0000000000..4f2519bb1f --- /dev/null +++ b/tests/qemuxml2argvdata/aarch64-virt-headless-mmio.xml @@ -0,0 +1,48 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + + + + + + 4194304 + 4194304 + 4 + + hvm + /usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw + /path/to/guest_VARS.raw + + + + + + + + /usr/bin/qemu-system-aarch64 + + + + +
+ + + + +
+ + + + + + + +
+ + + /dev/urandom +
+ + + diff --git a/tests/qemuxml2argvdata/riscv64-virt-headless-mmio.riscv64-latest.args b/tests/qemuxml2argvdata/riscv64-virt-headless-mmio.riscv64-latest.args new file mode 100644 index 0000000000..bf7ce2cf9e --- /dev/null +++ b/tests/qemuxml2argvdata/riscv64-virt-headless-mmio.riscv64-latest.args @@ -0,0 +1,43 @@ +LC_ALL=C \ +PATH=/bin \ +HOME=/var/lib/libvirt/qemu/domain--1-guest \ +USER=test \ +LOGNAME=test \ +XDG_DATA_HOME=/var/lib/libvirt/qemu/domain--1-guest/.local/share \ +XDG_CACHE_HOME=/var/lib/libvirt/qemu/domain--1-guest/.cache \ +XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-guest/.config \ +/usr/bin/qemu-system-riscv64 \ +-name guest=guest,debug-threads=on \ +-S \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-guest/master-key.aes"}' \ +-machine virt,usb=off,dump-guest-core=off,memory-backend=riscv_virt_board.ram \ +-accel tcg \ +-m size=4194304k \ +-object '{"qom-type":"memory-backend-ram","id":"riscv_virt_board.ram","size":4294967296}' \ +-overcommit mem-lock=off \ +-smp 4,sockets=4,cores=1,threads=1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \ +-mon chardev=charmonitor,id=monitor,mode=control \ +-rtc base=utc \ +-no-shutdown \ +-boot strict=on \ +-device '{"driver":"virtio-serial-device","id":"virtio-serial0"}' \ +-blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.qcow2","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \ +-blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"qcow2","file":"libvirt-1-storage"}' \ +-device '{"driver":"virtio-blk-device","drive":"libvirt-1-format","id":"virtio-disk0","bootindex":1}' \ +-netdev '{"type":"user","id":"hostnet0"}' \ +-device '{"driver":"virtio-net-device","netdev":"hostnet0","id":"net0","mac":"52:54:00:09:a4:37"}' \ +-chardev pty,id=charserial0 \ +-serial chardev:charserial0 \ +-chardev socket,id=charchannel0,fd=1729,server=on,wait=off \ +-device '{"driver":"virtserialport","bus":"virtio-serial0.0","nr":1,"chardev":"charchannel0","id":"channel0","name":"org.qemu.guest_agent.0"}' \ +-audiodev '{"id":"audio1","driver":"none"}' \ +-device '{"driver":"virtio-balloon-device","id":"balloon0"}' \ +-object '{"qom-type":"rng-random","id":"objrng0","filename":"/dev/urandom"}' \ +-device '{"driver":"virtio-rng-device","rng":"objrng0","id":"rng0"}' \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ +-msg timestamp=on diff --git a/tests/qemuxml2argvdata/riscv64-virt-headless-mmio.xml b/tests/qemuxml2argvdata/riscv64-virt-headless-mmio.xml new file mode 100644 index 0000000000..bcba73e9f1 --- /dev/null +++ b/tests/qemuxml2argvdata/riscv64-virt-headless-mmio.xml @@ -0,0 +1,43 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + + + + + + 4194304 + 4194304 + 4 + + hvm + + + + + /usr/bin/qemu-system-riscv64 + + + + +
+ + + + +
+ + + + + + + +
+ + + /dev/urandom +
+ + + diff --git a/tests/qemuxml2xmloutdata/aarch64-virt-headless-mmio.aarch64-latest.xml b/tests/qemuxml2xmloutdata/aarch64-virt-headless-mmio.aarch64-latest.xml new file mode 100644 index 0000000000..1b2d6e70bd --- /dev/null +++ b/tests/qemuxml2xmloutdata/aarch64-virt-headless-mmio.aarch64-latest.xml @@ -0,0 +1,71 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + + + + + + 4194304 + 4194304 + 4 + + hvm + + + + + /usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw + /path/to/guest_VARS.raw + + + + + + + + cortex-a15 + + + destroy + restart + destroy + + /usr/bin/qemu-system-aarch64 + + + + +
+ + + +
+ + + + +
+ + + + + + + + + + + +
+ +