tests: Add virt-install-aarch64-win11

Please note that this is preliminary and some issues remain described
below:

The installation will not start because USB cdrom is not emulated as a
cdrom due to a bug in libvirt:
https://gitlab.com/libvirt/libvirt/-/issues/368

Pass bare QEMU command lines as a workaround.

Audio and TPM do not work because libosinfo cannot tell if an OS
supports devices on a particular architecture:
https://gitlab.com/libosinfo/libosinfo/-/issues/55

In reality, Windows on Arm64 lacks the ich9 driver and TPM fails,
spamming the Windows system logs. As a workaround, manually specify usb
for audio and drop the TPM.

Signed-off-by: Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp>
This commit is contained in:
Akihiko Odaki
2025-08-21 18:14:22 +02:00
committed by Pavel Hrdina
parent d112454522
commit dfcab03dc0
2 changed files with 74 additions and 0 deletions
@@ -0,0 +1,70 @@
<domain type="kvm">
<name>win11</name>
<uuid>00000000-1111-2222-3333-444444444444</uuid>
<metadata>
<libosinfo:libosinfo xmlns:libosinfo="http://libosinfo.org/xmlns/libvirt/domain/1.0">
<libosinfo:os id="http://microsoft.com/win/11"/>
</libosinfo:libosinfo>
</metadata>
<memory>65536</memory>
<currentMemory>65536</currentMemory>
<vcpu>1</vcpu>
<os firmware="efi">
<type arch="aarch64" machine="virt">hvm</type>
<boot dev="hd"/>
</os>
<features>
<acpi/>
</features>
<cpu mode="host-passthrough"/>
<clock offset="localtime"/>
<devices>
<emulator>/usr/bin/qemu-system-aarch64</emulator>
<disk type="file" device="disk">
<driver name="qemu" type="qcow2"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="vda" bus="virtio"/>
</disk>
<controller type="usb" model="qemu-xhci" ports="15"/>
<controller type="pci" model="pcie-root"/>
<controller type="pci" model="pcie-root-port"/>
<controller type="pci" model="pcie-root-port"/>
<controller type="pci" model="pcie-root-port"/>
<controller type="pci" model="pcie-root-port"/>
<controller type="pci" model="pcie-root-port"/>
<controller type="pci" model="pcie-root-port"/>
<controller type="pci" model="pcie-root-port"/>
<controller type="pci" model="pcie-root-port"/>
<controller type="pci" model="pcie-root-port"/>
<controller type="pci" model="pcie-root-port"/>
<controller type="pci" model="pcie-root-port"/>
<controller type="pci" model="pcie-root-port"/>
<controller type="pci" model="pcie-root-port"/>
<controller type="pci" model="pcie-root-port"/>
<interface type="bridge">
<source bridge="testsuitebr0"/>
<mac address="00:11:22:33:44:55"/>
<model type="virtio"/>
</interface>
<console type="pty"/>
<channel type="unix">
<source mode="bind"/>
<target type="virtio" name="org.qemu.guest_agent.0"/>
</channel>
<channel type="spicevmc">
<target type="virtio" name="com.redhat.spice.0"/>
</channel>
<input type="tablet" bus="usb"/>
<input type="keyboard" bus="usb"/>
<tpm>
<backend type="emulator"/>
</tpm>
<graphics type="spice" port="-1" tlsPort="-1" autoport="yes">
<image compression="off"/>
</graphics>
<sound model="ich9"/>
<video>
<model type="virtio"/>
</video>
</devices>
</domain>
+4
View File
@@ -1797,6 +1797,10 @@ c.add_compare(
"--connect %(URI-KVM-AARCH64)s --disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init",
"aarch64-cloud-init",
)
c.add_compare(
"--connect %(URI-KVM-AARCH64)s --disk %(EXISTIMG1)s --os-variant win11",
"aarch64-win11",
)
#####################