[PATCH 0/3] Change default machine type for aarch64 and riscv64

This series is a first attempt at changing the default machine type for aarch64 and riscv64. It is difficult, if not impossible, to create a working VM with the current defaults of 'integratorcp' and 'spike_v1.10', so let's change the default to type 'virt'. See the following thread for more details https://listman.redhat.com/archives/libvir-list/2023-March/238746.html On aarch64, the default CPU for machine type 'virt' is 'cortex-a15', which works fine for <domain type='qemu'>, but fails for type='kvm' 2023-04-14T21:03:03.392256Z qemu-system-aarch64: KVM is not supported for this guest CPU type Do we need to go a step further and define a default CPU (presumably host-passthrough) for machine type 'virt' for kvm domains on aarch64? TIA for comments and suggestions! Regards, Jim Jim Fehlig (3): qemu: Change default machine type for aarch64 qemu: Change default machine type for riscv64 NEWS: Mention change of default machine type for aarch64 and riscv64 NEWS.rst | 6 ++++++ src/qemu/qemu_capabilities.c | 4 ++-- tests/domaincapsdata/qemu_4.2.0.aarch64.xml | 14 ++++++++++---- tests/domaincapsdata/qemu_5.0.0.aarch64.xml | 14 ++++++++++---- tests/domaincapsdata/qemu_5.2.0.aarch64.xml | 14 ++++++++++---- tests/domaincapsdata/qemu_6.0.0.aarch64.xml | 14 ++++++++++---- tests/domaincapsdata/qemu_6.2.0.aarch64.xml | 14 ++++++++++---- .../domaincapsdata/qemu_7.0.0-hvf.aarch64+hvf.xml | 6 ++++-- tests/domaincapsdata/qemu_7.0.0.aarch64.xml | 14 ++++++++++---- tests/qemucapabilitiesdata/caps_4.2.0_aarch64.xml | 4 ++-- tests/qemucapabilitiesdata/caps_5.0.0_aarch64.xml | 8 ++++---- tests/qemucapabilitiesdata/caps_5.0.0_riscv64.xml | 2 +- tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml | 8 ++++---- tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml | 2 +- tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml | 8 ++++---- tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml | 8 ++++---- .../caps_7.0.0_aarch64+hvf.xml | 8 ++++---- tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml | 8 ++++---- tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml | 4 ++-- 19 files changed, 102 insertions(+), 58 deletions(-) -- 2.40.0

It's quite difficult, if not impossible, to create a working aarch64 VM using the current default machine type of 'integratorcp'. Change the default to the more appropriate and virtualization friendly 'virt' machine type. Signed-off-by: Jim Fehlig <jfehlig@suse.com> --- src/qemu/qemu_capabilities.c | 2 +- tests/domaincapsdata/qemu_4.2.0.aarch64.xml | 14 ++++++++++---- tests/domaincapsdata/qemu_5.0.0.aarch64.xml | 14 ++++++++++---- tests/domaincapsdata/qemu_5.2.0.aarch64.xml | 14 ++++++++++---- tests/domaincapsdata/qemu_6.0.0.aarch64.xml | 14 ++++++++++---- tests/domaincapsdata/qemu_6.2.0.aarch64.xml | 14 ++++++++++---- .../domaincapsdata/qemu_7.0.0-hvf.aarch64+hvf.xml | 6 ++++-- tests/domaincapsdata/qemu_7.0.0.aarch64.xml | 14 ++++++++++---- tests/qemucapabilitiesdata/caps_4.2.0_aarch64.xml | 4 ++-- tests/qemucapabilitiesdata/caps_5.0.0_aarch64.xml | 8 ++++---- tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml | 8 ++++---- tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml | 8 ++++---- tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml | 8 ++++---- .../caps_7.0.0_aarch64+hvf.xml | 8 ++++---- tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml | 8 ++++---- 15 files changed, 91 insertions(+), 53 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index ea6821e99f..9ec283db63 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2690,7 +2690,7 @@ static const char *preferredMachines[] = "integratorcp", /* VIR_ARCH_ARMV7L */ "integratorcp", /* VIR_ARCH_ARMV7B */ - "integratorcp", /* VIR_ARCH_AARCH64 */ + "virt", /* VIR_ARCH_AARCH64 */ "axis-dev88", /* VIR_ARCH_CRIS */ "pc", /* VIR_ARCH_I686 */ NULL, /* VIR_ARCH_ITANIUM (doesn't exist in QEMU any more) */ diff --git a/tests/domaincapsdata/qemu_4.2.0.aarch64.xml b/tests/domaincapsdata/qemu_4.2.0.aarch64.xml index 533b08606e..981a06856d 100644 --- a/tests/domaincapsdata/qemu_4.2.0.aarch64.xml +++ b/tests/domaincapsdata/qemu_4.2.0.aarch64.xml @@ -1,12 +1,14 @@ <domainCapabilities> <path>/usr/bin/qemu-system-aarch64</path> <domain>kvm</domain> - <machine>integratorcp</machine> + <machine>virt-4.2</machine> <arch>aarch64</arch> - <vcpu max='1'/> + <vcpu max='512'/> <iothreads supported='yes'/> <os supported='yes'> - <enum name='firmware'/> + <enum name='firmware'> + <value>efi</value> + </enum> <loader supported='yes'> <value>/usr/share/AAVMF/AAVMF_CODE.fd</value> <value>/usr/share/AAVMF/AAVMF32_CODE.fd</value> @@ -183,7 +185,11 @@ </crypto> </devices> <features> - <gic supported='no'/> + <gic supported='yes'> + <enum name='version'> + <value>3</value> + </enum> + </gic> <vmcoreinfo supported='yes'/> <genid supported='no'/> <backingStoreInput supported='yes'/> diff --git a/tests/domaincapsdata/qemu_5.0.0.aarch64.xml b/tests/domaincapsdata/qemu_5.0.0.aarch64.xml index e38a2a01d2..f84aec44c9 100644 --- a/tests/domaincapsdata/qemu_5.0.0.aarch64.xml +++ b/tests/domaincapsdata/qemu_5.0.0.aarch64.xml @@ -1,12 +1,14 @@ <domainCapabilities> <path>/usr/bin/qemu-system-aarch64</path> <domain>kvm</domain> - <machine>integratorcp</machine> + <machine>virt-5.0</machine> <arch>aarch64</arch> - <vcpu max='1'/> + <vcpu max='512'/> <iothreads supported='yes'/> <os supported='yes'> - <enum name='firmware'/> + <enum name='firmware'> + <value>efi</value> + </enum> <loader supported='yes'> <value>/usr/share/AAVMF/AAVMF_CODE.fd</value> <value>/usr/share/AAVMF/AAVMF32_CODE.fd</value> @@ -196,7 +198,11 @@ </crypto> </devices> <features> - <gic supported='no'/> + <gic supported='yes'> + <enum name='version'> + <value>3</value> + </enum> + </gic> <vmcoreinfo supported='yes'/> <genid supported='no'/> <backingStoreInput supported='yes'/> diff --git a/tests/domaincapsdata/qemu_5.2.0.aarch64.xml b/tests/domaincapsdata/qemu_5.2.0.aarch64.xml index e38a2a01d2..af01bdfbe9 100644 --- a/tests/domaincapsdata/qemu_5.2.0.aarch64.xml +++ b/tests/domaincapsdata/qemu_5.2.0.aarch64.xml @@ -1,12 +1,14 @@ <domainCapabilities> <path>/usr/bin/qemu-system-aarch64</path> <domain>kvm</domain> - <machine>integratorcp</machine> + <machine>virt-5.2</machine> <arch>aarch64</arch> - <vcpu max='1'/> + <vcpu max='512'/> <iothreads supported='yes'/> <os supported='yes'> - <enum name='firmware'/> + <enum name='firmware'> + <value>efi</value> + </enum> <loader supported='yes'> <value>/usr/share/AAVMF/AAVMF_CODE.fd</value> <value>/usr/share/AAVMF/AAVMF32_CODE.fd</value> @@ -196,7 +198,11 @@ </crypto> </devices> <features> - <gic supported='no'/> + <gic supported='yes'> + <enum name='version'> + <value>3</value> + </enum> + </gic> <vmcoreinfo supported='yes'/> <genid supported='no'/> <backingStoreInput supported='yes'/> diff --git a/tests/domaincapsdata/qemu_6.0.0.aarch64.xml b/tests/domaincapsdata/qemu_6.0.0.aarch64.xml index f1d4da661f..67889c4572 100644 --- a/tests/domaincapsdata/qemu_6.0.0.aarch64.xml +++ b/tests/domaincapsdata/qemu_6.0.0.aarch64.xml @@ -1,12 +1,14 @@ <domainCapabilities> <path>/usr/bin/qemu-system-aarch64</path> <domain>kvm</domain> - <machine>integratorcp</machine> + <machine>virt-6.0</machine> <arch>aarch64</arch> - <vcpu max='1'/> + <vcpu max='512'/> <iothreads supported='yes'/> <os supported='yes'> - <enum name='firmware'/> + <enum name='firmware'> + <value>efi</value> + </enum> <loader supported='yes'> <value>/usr/share/AAVMF/AAVMF_CODE.fd</value> <value>/usr/share/AAVMF/AAVMF32_CODE.fd</value> @@ -198,7 +200,11 @@ </crypto> </devices> <features> - <gic supported='no'/> + <gic supported='yes'> + <enum name='version'> + <value>3</value> + </enum> + </gic> <vmcoreinfo supported='yes'/> <genid supported='no'/> <backingStoreInput supported='yes'/> diff --git a/tests/domaincapsdata/qemu_6.2.0.aarch64.xml b/tests/domaincapsdata/qemu_6.2.0.aarch64.xml index 1f32f6d59a..241e893df6 100644 --- a/tests/domaincapsdata/qemu_6.2.0.aarch64.xml +++ b/tests/domaincapsdata/qemu_6.2.0.aarch64.xml @@ -1,12 +1,14 @@ <domainCapabilities> <path>/usr/bin/qemu-system-aarch64</path> <domain>kvm</domain> - <machine>integratorcp</machine> + <machine>virt-6.2</machine> <arch>aarch64</arch> - <vcpu max='1'/> + <vcpu max='512'/> <iothreads supported='yes'/> <os supported='yes'> - <enum name='firmware'/> + <enum name='firmware'> + <value>efi</value> + </enum> <loader supported='yes'> <value>/usr/share/AAVMF/AAVMF_CODE.fd</value> <value>/usr/share/AAVMF/AAVMF32_CODE.fd</value> @@ -205,7 +207,11 @@ </crypto> </devices> <features> - <gic supported='no'/> + <gic supported='yes'> + <enum name='version'> + <value>3</value> + </enum> + </gic> <vmcoreinfo supported='yes'/> <genid supported='no'/> <backingStoreInput supported='yes'/> diff --git a/tests/domaincapsdata/qemu_7.0.0-hvf.aarch64+hvf.xml b/tests/domaincapsdata/qemu_7.0.0-hvf.aarch64+hvf.xml index 479f44c446..bcabf66d2a 100644 --- a/tests/domaincapsdata/qemu_7.0.0-hvf.aarch64+hvf.xml +++ b/tests/domaincapsdata/qemu_7.0.0-hvf.aarch64+hvf.xml @@ -1,11 +1,13 @@ <domainCapabilities> <path>/usr/bin/qemu-system-aarch64</path> <domain>hvf</domain> - <machine>integratorcp</machine> + <machine>virt-7.0</machine> <arch>aarch64</arch> <iothreads supported='yes'/> <os supported='yes'> - <enum name='firmware'/> + <enum name='firmware'> + <value>efi</value> + </enum> <loader supported='yes'> <value>/usr/share/AAVMF/AAVMF_CODE.fd</value> <value>/usr/share/AAVMF/AAVMF32_CODE.fd</value> diff --git a/tests/domaincapsdata/qemu_7.0.0.aarch64.xml b/tests/domaincapsdata/qemu_7.0.0.aarch64.xml index 01b2765242..6aa5e78612 100644 --- a/tests/domaincapsdata/qemu_7.0.0.aarch64.xml +++ b/tests/domaincapsdata/qemu_7.0.0.aarch64.xml @@ -1,12 +1,14 @@ <domainCapabilities> <path>/usr/bin/qemu-system-aarch64</path> <domain>kvm</domain> - <machine>integratorcp</machine> + <machine>virt-7.0</machine> <arch>aarch64</arch> - <vcpu max='1'/> + <vcpu max='512'/> <iothreads supported='yes'/> <os supported='yes'> - <enum name='firmware'/> + <enum name='firmware'> + <value>efi</value> + </enum> <loader supported='yes'> <value>/usr/share/AAVMF/AAVMF_CODE.fd</value> <value>/usr/share/AAVMF/AAVMF32_CODE.fd</value> @@ -204,7 +206,11 @@ </crypto> </devices> <features> - <gic supported='no'/> + <gic supported='yes'> + <enum name='version'> + <value>3</value> + </enum> + </gic> <vmcoreinfo supported='yes'/> <genid supported='no'/> <backingStoreInput supported='yes'/> diff --git a/tests/qemucapabilitiesdata/caps_4.2.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_4.2.0_aarch64.xml index f87962a379..6a7f33e3c6 100644 --- a/tests/qemucapabilitiesdata/caps_4.2.0_aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_4.2.0_aarch64.xml @@ -173,6 +173,7 @@ <cpu type='kvm' name='cortex-r5' typename='cortex-r5-arm-cpu'/> <cpu type='kvm' name='pxa270-a1' typename='pxa270-a1-arm-cpu'/> <cpu type='kvm' name='pxa270' typename='pxa270-arm-cpu'/> + <machine type='kvm' name='virt-4.2' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='kvm' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu'/> <machine type='kvm' name='nuri' maxCpus='2'/> <machine type='kvm' name='mps2-an511' maxCpus='1' defaultCPU='cortex-m3-arm-cpu'/> @@ -204,7 +205,6 @@ <machine type='kvm' name='musca-a' maxCpus='2' defaultCPU='cortex-m33-arm-cpu'/> <machine type='kvm' name='mcimx7d-sabre' maxCpus='2'/> <machine type='kvm' name='sx1' maxCpus='1' defaultCPU='ti925t-arm-cpu'/> - <machine type='kvm' name='virt-4.2' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='kvm' name='sx1-v1' maxCpus='1' defaultCPU='ti925t-arm-cpu'/> <machine type='kvm' name='virt-2.6' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='kvm' name='cubieboard' maxCpus='1' defaultCPU='cortex-a9-arm-cpu'/> @@ -302,6 +302,7 @@ <cpu type='tcg' name='cortex-r5' typename='cortex-r5-arm-cpu'/> <cpu type='tcg' name='pxa270-a1' typename='pxa270-a1-arm-cpu'/> <cpu type='tcg' name='pxa270' typename='pxa270-arm-cpu'/> + <machine type='tcg' name='virt-4.2' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='tcg' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu'/> <machine type='tcg' name='nuri' maxCpus='2'/> <machine type='tcg' name='mps2-an511' maxCpus='1' defaultCPU='cortex-m3-arm-cpu'/> @@ -333,7 +334,6 @@ <machine type='tcg' name='musca-a' maxCpus='2' defaultCPU='cortex-m33-arm-cpu'/> <machine type='tcg' name='mcimx7d-sabre' maxCpus='2'/> <machine type='tcg' name='sx1' maxCpus='1' defaultCPU='ti925t-arm-cpu'/> - <machine type='tcg' name='virt-4.2' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='tcg' name='sx1-v1' maxCpus='1' defaultCPU='ti925t-arm-cpu'/> <machine type='tcg' name='virt-2.6' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='tcg' name='cubieboard' maxCpus='1' defaultCPU='cortex-a9-arm-cpu'/> diff --git a/tests/qemucapabilitiesdata/caps_5.0.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_5.0.0_aarch64.xml index 09619133c4..a2b7214b8a 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0_aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_5.0.0_aarch64.xml @@ -187,7 +187,7 @@ <cpu type='kvm' name='arm1136-r2' typename='arm1136-r2-arm-cpu'/> <cpu type='kvm' name='pxa270-b0' typename='pxa270-b0-arm-cpu'/> <cpu type='kvm' name='pxa262' typename='pxa262-arm-cpu'/> - <machine type='kvm' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu'/> + <machine type='kvm' name='virt-5.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='kvm' name='virt-4.0' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='kvm' name='mcimx7d-sabre' maxCpus='2'/> <machine type='kvm' name='imx25-pdk' maxCpus='1'/> @@ -203,6 +203,7 @@ <machine type='kvm' name='sbsa-ref' maxCpus='512' defaultCPU='cortex-a57-arm-cpu'/> <machine type='kvm' name='spitz' maxCpus='1' defaultCPU='pxa270-c0-arm-cpu'/> <machine type='kvm' name='witherspoon-bmc' maxCpus='2'/> + <machine type='kvm' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu'/> <machine type='kvm' name='virt-3.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='kvm' name='netduino2' maxCpus='1'/> <machine type='kvm' name='realview-eb-mpcore' maxCpus='4' defaultCPU='arm11mpcore-arm-cpu'/> @@ -253,7 +254,6 @@ <machine type='kvm' name='tacoma-bmc' maxCpus='2'/> <machine type='kvm' name='sx1' maxCpus='1' defaultCPU='ti925t-arm-cpu'/> <machine type='kvm' name='highbank' maxCpus='4'/> - <machine type='kvm' name='virt-5.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='kvm' name='musca-a' maxCpus='2' defaultCPU='cortex-m33-arm-cpu'/> <machine type='kvm' name='musca-b1' maxCpus='2' defaultCPU='cortex-m33-arm-cpu'/> <machine type='kvm' name='realview-eb' maxCpus='1' defaultCPU='arm926-arm-cpu'/> @@ -321,7 +321,7 @@ <cpu type='tcg' name='arm1136-r2' typename='arm1136-r2-arm-cpu'/> <cpu type='tcg' name='pxa270-b0' typename='pxa270-b0-arm-cpu'/> <cpu type='tcg' name='pxa262' typename='pxa262-arm-cpu'/> - <machine type='tcg' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu'/> + <machine type='tcg' name='virt-5.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='tcg' name='virt-4.0' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='tcg' name='mcimx7d-sabre' maxCpus='2'/> <machine type='tcg' name='imx25-pdk' maxCpus='1'/> @@ -337,6 +337,7 @@ <machine type='tcg' name='sbsa-ref' maxCpus='512' defaultCPU='cortex-a57-arm-cpu'/> <machine type='tcg' name='spitz' maxCpus='1' defaultCPU='pxa270-c0-arm-cpu'/> <machine type='tcg' name='witherspoon-bmc' maxCpus='2'/> + <machine type='tcg' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu'/> <machine type='tcg' name='virt-3.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='tcg' name='netduino2' maxCpus='1'/> <machine type='tcg' name='realview-eb-mpcore' maxCpus='4' defaultCPU='arm11mpcore-arm-cpu'/> @@ -387,7 +388,6 @@ <machine type='tcg' name='tacoma-bmc' maxCpus='2'/> <machine type='tcg' name='sx1' maxCpus='1' defaultCPU='ti925t-arm-cpu'/> <machine type='tcg' name='highbank' maxCpus='4'/> - <machine type='tcg' name='virt-5.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes'/> <machine type='tcg' name='musca-a' maxCpus='2' defaultCPU='cortex-m33-arm-cpu'/> <machine type='tcg' name='musca-b1' maxCpus='2' defaultCPU='cortex-m33-arm-cpu'/> <machine type='tcg' name='realview-eb' maxCpus='1' defaultCPU='arm926-arm-cpu'/> diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml index effcf4e96a..b1c5c21abb 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml @@ -195,7 +195,7 @@ <cpu type='kvm' name='arm1136-r2' typename='arm1136-r2-arm-cpu'/> <cpu type='kvm' name='pxa270-b0' typename='pxa270-b0-arm-cpu'/> <cpu type='kvm' name='pxa262' typename='pxa262-arm-cpu'/> - <machine type='kvm' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> + <machine type='kvm' name='virt-5.2' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='raspi0' maxCpus='1' defaultRAMid='ram'/> <machine type='kvm' name='virt-4.0' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='mcimx7d-sabre' maxCpus='2' defaultRAMid='mcimx7d-sabre.ram'/> @@ -215,6 +215,7 @@ <machine type='kvm' name='sbsa-ref' maxCpus='512' defaultCPU='cortex-a57-arm-cpu' defaultRAMid='sbsa-ref.ram'/> <machine type='kvm' name='spitz' maxCpus='1' defaultCPU='pxa270-c0-arm-cpu'/> <machine type='kvm' name='witherspoon-bmc' maxCpus='1' defaultRAMid='ram'/> + <machine type='kvm' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> <machine type='kvm' name='virt-3.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='netduino2' maxCpus='1'/> <machine type='kvm' name='realview-eb-mpcore' maxCpus='4' defaultCPU='arm11mpcore-arm-cpu'/> @@ -232,7 +233,6 @@ <machine type='kvm' name='virt-2.9' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='raspi1ap' maxCpus='1' defaultRAMid='ram'/> <machine type='kvm' name='palmetto-bmc' maxCpus='1' defaultRAMid='ram'/> - <machine type='kvm' name='virt-5.2' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='lm3s811evb' maxCpus='1' defaultCPU='cortex-m3-arm-cpu'/> <machine type='kvm' name='collie' maxCpus='1' defaultCPU='sa1110-arm-cpu' defaultRAMid='strongarm.sdram'/> <machine type='kvm' name='raspi3ap' maxCpus='4' defaultRAMid='ram'/> @@ -340,7 +340,7 @@ <cpu type='tcg' name='arm1136-r2' typename='arm1136-r2-arm-cpu'/> <cpu type='tcg' name='pxa270-b0' typename='pxa270-b0-arm-cpu'/> <cpu type='tcg' name='pxa262' typename='pxa262-arm-cpu'/> - <machine type='tcg' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> + <machine type='tcg' name='virt-5.2' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='raspi0' maxCpus='1' defaultRAMid='ram'/> <machine type='tcg' name='virt-4.0' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='mcimx7d-sabre' maxCpus='2' defaultRAMid='mcimx7d-sabre.ram'/> @@ -360,6 +360,7 @@ <machine type='tcg' name='sbsa-ref' maxCpus='512' defaultCPU='cortex-a57-arm-cpu' defaultRAMid='sbsa-ref.ram'/> <machine type='tcg' name='spitz' maxCpus='1' defaultCPU='pxa270-c0-arm-cpu'/> <machine type='tcg' name='witherspoon-bmc' maxCpus='1' defaultRAMid='ram'/> + <machine type='tcg' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> <machine type='tcg' name='virt-3.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='netduino2' maxCpus='1'/> <machine type='tcg' name='realview-eb-mpcore' maxCpus='4' defaultCPU='arm11mpcore-arm-cpu'/> @@ -377,7 +378,6 @@ <machine type='tcg' name='virt-2.9' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='raspi1ap' maxCpus='1' defaultRAMid='ram'/> <machine type='tcg' name='palmetto-bmc' maxCpus='1' defaultRAMid='ram'/> - <machine type='tcg' name='virt-5.2' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='lm3s811evb' maxCpus='1' defaultCPU='cortex-m3-arm-cpu'/> <machine type='tcg' name='collie' maxCpus='1' defaultCPU='sa1110-arm-cpu' defaultRAMid='strongarm.sdram'/> <machine type='tcg' name='raspi3ap' maxCpus='4' defaultRAMid='ram'/> diff --git a/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml index 651cdc8095..6faf407a97 100644 --- a/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml @@ -206,7 +206,7 @@ <cpu type='kvm' name='arm1136-r2' typename='arm1136-r2-arm-cpu'/> <cpu type='kvm' name='pxa270-b0' typename='pxa270-b0-arm-cpu'/> <cpu type='kvm' name='pxa262' typename='pxa262-arm-cpu'/> - <machine type='kvm' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> + <machine type='kvm' name='virt-6.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='raspi0' maxCpus='1' defaultRAMid='ram'/> <machine type='kvm' name='virt-4.0' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='mcimx7d-sabre' maxCpus='2' defaultRAMid='mcimx7d-sabre.ram'/> @@ -219,7 +219,6 @@ <machine type='kvm' name='quanta-gsj' maxCpus='2' defaultCPU='cortex-a9-arm-cpu' defaultRAMid='ram'/> <machine type='kvm' name='midway' maxCpus='4' defaultRAMid='highbank.dram'/> <machine type='kvm' name='virt-2.12' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> - <machine type='kvm' name='virt-6.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='mps2-an386' maxCpus='1' defaultCPU='cortex-m4-arm-cpu' defaultRAMid='mps.ram'/> <machine type='kvm' name='virt-4.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='mainstone' maxCpus='1' defaultCPU='pxa270-c5-arm-cpu'/> @@ -227,6 +226,7 @@ <machine type='kvm' name='sbsa-ref' maxCpus='512' defaultCPU='cortex-a57-arm-cpu' defaultRAMid='sbsa-ref.ram'/> <machine type='kvm' name='spitz' maxCpus='1' defaultCPU='pxa270-c0-arm-cpu'/> <machine type='kvm' name='witherspoon-bmc' maxCpus='1' defaultRAMid='ram'/> + <machine type='kvm' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> <machine type='kvm' name='virt-3.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='netduino2' maxCpus='1'/> <machine type='kvm' name='realview-eb-mpcore' maxCpus='4' defaultCPU='arm11mpcore-arm-cpu'/> @@ -359,7 +359,7 @@ <cpu type='tcg' name='arm1136-r2' typename='arm1136-r2-arm-cpu'/> <cpu type='tcg' name='pxa270-b0' typename='pxa270-b0-arm-cpu'/> <cpu type='tcg' name='pxa262' typename='pxa262-arm-cpu'/> - <machine type='tcg' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> + <machine type='tcg' name='virt-6.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='raspi0' maxCpus='1' defaultRAMid='ram'/> <machine type='tcg' name='virt-4.0' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='mcimx7d-sabre' maxCpus='2' defaultRAMid='mcimx7d-sabre.ram'/> @@ -372,7 +372,6 @@ <machine type='tcg' name='quanta-gsj' maxCpus='2' defaultCPU='cortex-a9-arm-cpu' defaultRAMid='ram'/> <machine type='tcg' name='midway' maxCpus='4' defaultRAMid='highbank.dram'/> <machine type='tcg' name='virt-2.12' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> - <machine type='tcg' name='virt-6.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='mps2-an386' maxCpus='1' defaultCPU='cortex-m4-arm-cpu' defaultRAMid='mps.ram'/> <machine type='tcg' name='virt-4.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='mainstone' maxCpus='1' defaultCPU='pxa270-c5-arm-cpu'/> @@ -380,6 +379,7 @@ <machine type='tcg' name='sbsa-ref' maxCpus='512' defaultCPU='cortex-a57-arm-cpu' defaultRAMid='sbsa-ref.ram'/> <machine type='tcg' name='spitz' maxCpus='1' defaultCPU='pxa270-c0-arm-cpu'/> <machine type='tcg' name='witherspoon-bmc' maxCpus='1' defaultRAMid='ram'/> + <machine type='tcg' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> <machine type='tcg' name='virt-3.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='netduino2' maxCpus='1'/> <machine type='tcg' name='realview-eb-mpcore' maxCpus='4' defaultCPU='arm11mpcore-arm-cpu'/> diff --git a/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml index fd3d1602a1..e312801b89 100644 --- a/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml @@ -220,7 +220,7 @@ <cpu type='kvm' name='arm1136-r2' typename='arm1136-r2-arm-cpu'/> <cpu type='kvm' name='pxa270-b0' typename='pxa270-b0-arm-cpu'/> <cpu type='kvm' name='pxa262' typename='pxa262-arm-cpu'/> - <machine type='kvm' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> + <machine type='kvm' name='virt-6.2' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='raspi0' maxCpus='1' defaultRAMid='ram'/> <machine type='kvm' name='virt-4.0' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='mcimx7d-sabre' maxCpus='2' defaultRAMid='mcimx7d-sabre.ram'/> @@ -242,6 +242,7 @@ <machine type='kvm' name='spitz' maxCpus='1' defaultCPU='pxa270-c0-arm-cpu'/> <machine type='kvm' name='virt-6.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='witherspoon-bmc' maxCpus='1' defaultRAMid='ram'/> + <machine type='kvm' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> <machine type='kvm' name='virt-3.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='netduino2' maxCpus='1'/> <machine type='kvm' name='realview-eb-mpcore' maxCpus='4' defaultCPU='arm11mpcore-arm-cpu'/> @@ -281,7 +282,6 @@ <machine type='kvm' name='ast2500-evb' maxCpus='1' defaultRAMid='ram'/> <machine type='kvm' name='mps2-an385' maxCpus='1' defaultCPU='cortex-m3-arm-cpu' defaultRAMid='mps.ram'/> <machine type='kvm' name='raspi2b' maxCpus='4' defaultRAMid='ram'/> - <machine type='kvm' name='virt-6.2' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='sonorapass-bmc' maxCpus='1' defaultRAMid='ram'/> <machine type='kvm' name='ast2600-evb' maxCpus='2' defaultRAMid='ram'/> <machine type='kvm' name='mps2-an511' maxCpus='1' defaultCPU='cortex-m3-arm-cpu' defaultRAMid='mps.ram'/> @@ -382,7 +382,7 @@ <cpu type='tcg' name='arm1136-r2' typename='arm1136-r2-arm-cpu'/> <cpu type='tcg' name='pxa270-b0' typename='pxa270-b0-arm-cpu'/> <cpu type='tcg' name='pxa262' typename='pxa262-arm-cpu'/> - <machine type='tcg' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> + <machine type='tcg' name='virt-6.2' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='raspi0' maxCpus='1' defaultRAMid='ram'/> <machine type='tcg' name='virt-4.0' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='mcimx7d-sabre' maxCpus='2' defaultRAMid='mcimx7d-sabre.ram'/> @@ -404,6 +404,7 @@ <machine type='tcg' name='spitz' maxCpus='1' defaultCPU='pxa270-c0-arm-cpu'/> <machine type='tcg' name='virt-6.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='witherspoon-bmc' maxCpus='1' defaultRAMid='ram'/> + <machine type='tcg' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> <machine type='tcg' name='virt-3.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='netduino2' maxCpus='1'/> <machine type='tcg' name='realview-eb-mpcore' maxCpus='4' defaultCPU='arm11mpcore-arm-cpu'/> @@ -443,7 +444,6 @@ <machine type='tcg' name='ast2500-evb' maxCpus='1' defaultRAMid='ram'/> <machine type='tcg' name='mps2-an385' maxCpus='1' defaultCPU='cortex-m3-arm-cpu' defaultRAMid='mps.ram'/> <machine type='tcg' name='raspi2b' maxCpus='4' defaultRAMid='ram'/> - <machine type='tcg' name='virt-6.2' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='sonorapass-bmc' maxCpus='1' defaultRAMid='ram'/> <machine type='tcg' name='ast2600-evb' maxCpus='2' defaultRAMid='ram'/> <machine type='tcg' name='mps2-an511' maxCpus='1' defaultCPU='cortex-m3-arm-cpu' defaultRAMid='mps.ram'/> diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml index 2e8495dcdd..3517e81d15 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml +++ b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml @@ -229,7 +229,7 @@ <cpu type='hvf' name='arm1136-r2' typename='arm1136-r2-arm-cpu'/> <cpu type='hvf' name='pxa270-b0' typename='pxa270-b0-arm-cpu'/> <cpu type='hvf' name='pxa262' typename='pxa262-arm-cpu'/> - <machine type='hvf' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> + <machine type='hvf' name='virt-7.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='hvf' name='raspi0' maxCpus='1' defaultRAMid='ram'/> <machine type='hvf' name='virt-4.0' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='hvf' name='mcimx7d-sabre' maxCpus='2' defaultRAMid='mcimx7d-sabre.ram'/> @@ -251,6 +251,7 @@ <machine type='hvf' name='spitz' maxCpus='1' defaultCPU='pxa270-c0-arm-cpu'/> <machine type='hvf' name='virt-6.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='hvf' name='witherspoon-bmc' maxCpus='1' defaultRAMid='ram'/> + <machine type='hvf' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> <machine type='hvf' name='virt-3.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='hvf' name='netduino2' maxCpus='1'/> <machine type='hvf' name='realview-eb-mpcore' maxCpus='4' defaultCPU='arm11mpcore-arm-cpu'/> @@ -329,7 +330,6 @@ <machine type='hvf' name='virt-2.8' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='hvf' name='virt-2.11' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='hvf' name='mps2-an521' maxCpus='2' defaultCPU='cortex-m33-arm-cpu' defaultRAMid='mps.ram'/> - <machine type='hvf' name='virt-7.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='hvf' name='terrier' maxCpus='1' defaultCPU='pxa270-c5-arm-cpu'/> <hostCPU type='tcg' model='max' migratability='no'> <property name='sve768' type='boolean' value='true'/> @@ -394,7 +394,7 @@ <cpu type='tcg' name='arm1136-r2' typename='arm1136-r2-arm-cpu'/> <cpu type='tcg' name='pxa270-b0' typename='pxa270-b0-arm-cpu'/> <cpu type='tcg' name='pxa262' typename='pxa262-arm-cpu'/> - <machine type='tcg' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> + <machine type='tcg' name='virt-7.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='raspi0' maxCpus='1' defaultRAMid='ram'/> <machine type='tcg' name='virt-4.0' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='mcimx7d-sabre' maxCpus='2' defaultRAMid='mcimx7d-sabre.ram'/> @@ -416,6 +416,7 @@ <machine type='tcg' name='spitz' maxCpus='1' defaultCPU='pxa270-c0-arm-cpu'/> <machine type='tcg' name='virt-6.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='witherspoon-bmc' maxCpus='1' defaultRAMid='ram'/> + <machine type='tcg' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> <machine type='tcg' name='virt-3.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='netduino2' maxCpus='1'/> <machine type='tcg' name='realview-eb-mpcore' maxCpus='4' defaultCPU='arm11mpcore-arm-cpu'/> @@ -494,7 +495,6 @@ <machine type='tcg' name='virt-2.8' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='virt-2.11' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='mps2-an521' maxCpus='2' defaultCPU='cortex-m33-arm-cpu' defaultRAMid='mps.ram'/> - <machine type='tcg' name='virt-7.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='terrier' maxCpus='1' defaultCPU='pxa270-c5-arm-cpu'/> <gic version='3' kernel='yes' emulated='yes'/> <gic version='2' kernel='no' emulated='yes'/> diff --git a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml index 1420cc844d..58db75d1d7 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml @@ -229,7 +229,7 @@ <cpu type='kvm' name='arm1136-r2' typename='arm1136-r2-arm-cpu'/> <cpu type='kvm' name='pxa270-b0' typename='pxa270-b0-arm-cpu'/> <cpu type='kvm' name='pxa262' typename='pxa262-arm-cpu'/> - <machine type='kvm' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> + <machine type='kvm' name='virt-7.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='raspi0' maxCpus='1' defaultRAMid='ram'/> <machine type='kvm' name='virt-4.0' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='mcimx7d-sabre' maxCpus='2' defaultRAMid='mcimx7d-sabre.ram'/> @@ -251,6 +251,7 @@ <machine type='kvm' name='spitz' maxCpus='1' defaultCPU='pxa270-c0-arm-cpu'/> <machine type='kvm' name='virt-6.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='witherspoon-bmc' maxCpus='1' defaultRAMid='ram'/> + <machine type='kvm' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> <machine type='kvm' name='virt-3.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='netduino2' maxCpus='1'/> <machine type='kvm' name='realview-eb-mpcore' maxCpus='4' defaultCPU='arm11mpcore-arm-cpu'/> @@ -329,7 +330,6 @@ <machine type='kvm' name='virt-2.8' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='virt-2.11' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='mps2-an521' maxCpus='2' defaultCPU='cortex-m33-arm-cpu' defaultRAMid='mps.ram'/> - <machine type='kvm' name='virt-7.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='kvm' name='terrier' maxCpus='1' defaultCPU='pxa270-c5-arm-cpu'/> <hostCPU type='tcg' model='max' migratability='no'> <property name='sve768' type='boolean' value='true'/> @@ -394,7 +394,7 @@ <cpu type='tcg' name='arm1136-r2' typename='arm1136-r2-arm-cpu'/> <cpu type='tcg' name='pxa270-b0' typename='pxa270-b0-arm-cpu'/> <cpu type='tcg' name='pxa262' typename='pxa262-arm-cpu'/> - <machine type='tcg' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> + <machine type='tcg' name='virt-7.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='raspi0' maxCpus='1' defaultRAMid='ram'/> <machine type='tcg' name='virt-4.0' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='mcimx7d-sabre' maxCpus='2' defaultRAMid='mcimx7d-sabre.ram'/> @@ -416,6 +416,7 @@ <machine type='tcg' name='spitz' maxCpus='1' defaultCPU='pxa270-c0-arm-cpu'/> <machine type='tcg' name='virt-6.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='witherspoon-bmc' maxCpus='1' defaultRAMid='ram'/> + <machine type='tcg' name='integratorcp' maxCpus='1' defaultCPU='arm926-arm-cpu' defaultRAMid='integrator.ram'/> <machine type='tcg' name='virt-3.1' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='netduino2' maxCpus='1'/> <machine type='tcg' name='realview-eb-mpcore' maxCpus='4' defaultCPU='arm11mpcore-arm-cpu'/> @@ -494,7 +495,6 @@ <machine type='tcg' name='virt-2.8' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='virt-2.11' maxCpus='255' defaultCPU='cortex-a15-arm-cpu' numaMemSupported='yes' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='mps2-an521' maxCpus='2' defaultCPU='cortex-m33-arm-cpu' defaultRAMid='mps.ram'/> - <machine type='tcg' name='virt-7.0' alias='virt' maxCpus='512' defaultCPU='cortex-a15-arm-cpu' defaultRAMid='mach-virt.ram'/> <machine type='tcg' name='terrier' maxCpus='1' defaultCPU='pxa270-c5-arm-cpu'/> <gic version='3' kernel='yes' emulated='yes'/> <gic version='2' kernel='no' emulated='yes'/> -- 2.40.0

On Fri, Apr 14, 2023 at 03:14:47PM -0600, Jim Fehlig wrote:
It's quite difficult, if not impossible, to create a working aarch64 VM using the current default machine type of 'integratorcp'. Change the default to the more appropriate and virtualization friendly 'virt' machine type.
Signed-off-by: Jim Fehlig <jfehlig@suse.com> --- src/qemu/qemu_capabilities.c | 2 +- tests/domaincapsdata/qemu_4.2.0.aarch64.xml | 14 ++++++++++---- tests/domaincapsdata/qemu_5.0.0.aarch64.xml | 14 ++++++++++---- tests/domaincapsdata/qemu_5.2.0.aarch64.xml | 14 ++++++++++---- tests/domaincapsdata/qemu_6.0.0.aarch64.xml | 14 ++++++++++---- tests/domaincapsdata/qemu_6.2.0.aarch64.xml | 14 ++++++++++---- .../domaincapsdata/qemu_7.0.0-hvf.aarch64+hvf.xml | 6 ++++-- tests/domaincapsdata/qemu_7.0.0.aarch64.xml | 14 ++++++++++---- tests/qemucapabilitiesdata/caps_4.2.0_aarch64.xml | 4 ++-- tests/qemucapabilitiesdata/caps_5.0.0_aarch64.xml | 8 ++++---- tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml | 8 ++++---- tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml | 8 ++++---- tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml | 8 ++++---- .../caps_7.0.0_aarch64+hvf.xml | 8 ++++---- tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml | 8 ++++---- 15 files changed, 91 insertions(+), 53 deletions(-)
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index ea6821e99f..9ec283db63 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2690,7 +2690,7 @@ static const char *preferredMachines[] = "integratorcp", /* VIR_ARCH_ARMV7L */ "integratorcp", /* VIR_ARCH_ARMV7B */
- "integratorcp", /* VIR_ARCH_AARCH64 */ + "virt", /* VIR_ARCH_AARCH64 */
Looks good and the changes to the capabilities data make sense. However, I see no reason to limit the changes to a single Arm architecture (aarch64) when the other ones (armv7l, armv7b) can benefit from a better machine type default in the same way. I have confirmed that creating an integratorcp VM on those architectures poses the same challenges as it does on aarch64, and that using virt is a great way to overcome them. So, please change the default machine type to virt for armv7l and armv7b too. Note that I'm leaving armv6l out of the discussion here because it already behaves slightly differently from other Arm architectures, and also at this point there's probably no use for it except maybe emulating the original Raspberry Pi. Let's focus on changes that have a meaningful impact :) -- Andrea Bolognani / Red Hat / Virtualization

It's quite difficult, if not impossible, to create a working riscv64 VM using the current default machine type of 'spike_v1.10'. Change the default to the more appropriate and virtualization friendly 'virt' machine type. Signed-off-by: Jim Fehlig <jfehlig@suse.com> --- src/qemu/qemu_capabilities.c | 2 +- tests/qemucapabilitiesdata/caps_5.0.0_riscv64.xml | 2 +- tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml | 2 +- tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 9ec283db63..687e36e243 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2715,7 +2715,7 @@ static const char *preferredMachines[] = "bamboo", /* VIR_ARCH_PPCEMB */ "spike_v1.10", /* VIR_ARCH_RISCV32 */ - "spike_v1.10", /* VIR_ARCH_RISCV64 */ + "virt", /* VIR_ARCH_RISCV64 */ NULL, /* VIR_ARCH_S390 (no QEMU impl) */ "s390-ccw-virtio", /* VIR_ARCH_S390X */ "shix", /* VIR_ARCH_SH4 */ diff --git a/tests/qemucapabilitiesdata/caps_5.0.0_riscv64.xml b/tests/qemucapabilitiesdata/caps_5.0.0_riscv64.xml index fb460c9300..09a71875ef 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0_riscv64.xml +++ b/tests/qemucapabilitiesdata/caps_5.0.0_riscv64.xml @@ -122,8 +122,8 @@ <microcodeVersion>0</microcodeVersion> <package>v5.0.0</package> <arch>riscv64</arch> - <machine type='tcg' name='spike_v1.10' maxCpus='1'/> <machine type='tcg' name='virt' maxCpus='8' defaultCPU='rv64-riscv-cpu'/> + <machine type='tcg' name='spike_v1.10' maxCpus='1'/> <machine type='tcg' name='spike' maxCpus='1' default='yes' defaultCPU='rv64gcsu-v1.10.0-riscv-cpu'/> <machine type='tcg' name='sifive_e' maxCpus='1'/> <machine type='tcg' name='sifive_u' maxCpus='5'/> diff --git a/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml b/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml index fe4757a12e..4d03004fa1 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml +++ b/tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml @@ -127,8 +127,8 @@ <microcodeVersion>0</microcodeVersion> <package>v5.2.0</package> <arch>riscv64</arch> - <machine type='tcg' name='spike' maxCpus='8' default='yes' defaultCPU='rv64-riscv-cpu' numaMemSupported='yes'/> <machine type='tcg' name='virt' maxCpus='8' defaultCPU='rv64-riscv-cpu' numaMemSupported='yes'/> + <machine type='tcg' name='spike' maxCpus='8' default='yes' defaultCPU='rv64-riscv-cpu' numaMemSupported='yes'/> <machine type='tcg' name='sifive_e' maxCpus='1' defaultCPU='sifive-e51-riscv-cpu'/> <machine type='tcg' name='sifive_u' maxCpus='5' defaultCPU='sifive-u54-riscv-cpu'/> <machine type='tcg' name='microchip-icicle-kit' maxCpus='5'/> diff --git a/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml b/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml index 361c5fb811..4c5e72ba56 100644 --- a/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml +++ b/tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml @@ -147,11 +147,11 @@ <microcodeVersion>0</microcodeVersion> <package>v7.2.0-333-g222059a0fc</package> <arch>riscv64</arch> - <machine type='tcg' name='spike' maxCpus='8' default='yes' defaultCPU='rv64-riscv-cpu' numaMemSupported='yes' defaultRAMid='riscv.spike.ram'/> + <machine type='tcg' name='virt' maxCpus='512' defaultCPU='rv64-riscv-cpu' numaMemSupported='yes' defaultRAMid='riscv_virt_board.ram'/> <machine type='tcg' name='x-remote' maxCpus='1'/> + <machine type='tcg' name='spike' maxCpus='8' default='yes' defaultCPU='rv64-riscv-cpu' numaMemSupported='yes' defaultRAMid='riscv.spike.ram'/> <machine type='tcg' name='microchip-icicle-kit' maxCpus='5' defaultRAMid='microchip.icicle.kit.ram'/> <machine type='tcg' name='sifive_u' maxCpus='5' defaultCPU='sifive-u54-riscv-cpu' defaultRAMid='riscv.sifive.u.ram'/> <machine type='tcg' name='shakti_c' maxCpus='1' defaultCPU='shakti-c-riscv-cpu' defaultRAMid='riscv.shakti.c.ram'/> <machine type='tcg' name='sifive_e' maxCpus='1' defaultCPU='sifive-e51-riscv-cpu' defaultRAMid='riscv.sifive.e.ram'/> - <machine type='tcg' name='virt' maxCpus='512' defaultCPU='rv64-riscv-cpu' numaMemSupported='yes' defaultRAMid='riscv_virt_board.ram'/> </qemuCaps> -- 2.40.0

On Fri, Apr 14, 2023 at 03:14:48PM -0600, Jim Fehlig wrote:
It's quite difficult, if not impossible, to create a working riscv64 VM using the current default machine type of 'spike_v1.10'. Change the default to the more appropriate and virtualization friendly 'virt' machine type.
Signed-off-by: Jim Fehlig <jfehlig@suse.com> --- src/qemu/qemu_capabilities.c | 2 +- tests/qemucapabilitiesdata/caps_5.0.0_riscv64.xml | 2 +- tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml | 2 +- tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 9ec283db63..687e36e243 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2715,7 +2715,7 @@ static const char *preferredMachines[] = "bamboo", /* VIR_ARCH_PPCEMB */
"spike_v1.10", /* VIR_ARCH_RISCV32 */ - "spike_v1.10", /* VIR_ARCH_RISCV64 */ + "virt", /* VIR_ARCH_RISCV64 */
Same comment as the previous patch: no reason to limit this change to riscv64 when riscv32 would benefit from it just the same. Please change the default machine type for both architectures. -- Andrea Bolognani / Red Hat / Virtualization

Signed-off-by: Jim Fehlig <jfehlig@suse.com> --- NEWS.rst | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/NEWS.rst b/NEWS.rst index 6bc5a59c0d..76a7e8de98 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -19,6 +19,12 @@ v9.3.0 (unreleased) * **Improvements** + * qemu: Change default machine type for aarch64 and riscv64 + + It is nearly impossible to create a working VM using the current default + machine types. Change the aarch64 default from ``integratorcp`` to ``virt`` + and the riscv64 default from ``spike_v1.10`` to ``virt``. + * **Bug fixes** -- 2.40.0

On Fri, Apr 14, 2023 at 03:14:49PM -0600, Jim Fehlig wrote:
Signed-off-by: Jim Fehlig <jfehlig@suse.com> --- NEWS.rst | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/NEWS.rst b/NEWS.rst index 6bc5a59c0d..76a7e8de98 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -19,6 +19,12 @@ v9.3.0 (unreleased)
* **Improvements**
+ * qemu: Change default machine type for aarch64 and riscv64 + + It is nearly impossible to create a working VM using the current default + machine types. Change the aarch64 default from ``integratorcp`` to ``virt`` + and the riscv64 default from ``spike_v1.10`` to ``virt``.
I would suggest rewording this along the lines of * qemu: Change default machine type for Arm and RISC-V Arm and RISC-V architectures now use the ``virt`` machine type by default. The previous defaults were nearly unusable and had to be overridden in most cases. -- Andrea Bolognani / Red Hat / Virtualization

On Fri, Apr 14, 2023 at 03:14:46PM -0600, Jim Fehlig wrote:
On aarch64, the default CPU for machine type 'virt' is 'cortex-a15', which works fine for <domain type='qemu'>, but fails for type='kvm'
2023-04-14T21:03:03.392256Z qemu-system-aarch64: KVM is not supported for this guest CPU type
Do we need to go a step further and define a default CPU (presumably host-passthrough) for machine type 'virt' for kvm domains on aarch64?
Even for TCG, you're probably going to want to use something newer and more featureful than the default. Heck, even on x86_64 the default CPU model is pretty terrible and you really want to be using either host-model or host-passthrough. There's some movement in QEMU land when it comes to adding proper support for CPU models on Arm. So I would leave things as they are for now, in the hope that in the not-so-distant future we're going to be able to make host-model work across both TCG and KVM. -- Andrea Bolognani / Red Hat / Virtualization

On 4/17/23 05:57, Andrea Bolognani wrote:
On Fri, Apr 14, 2023 at 03:14:46PM -0600, Jim Fehlig wrote:
On aarch64, the default CPU for machine type 'virt' is 'cortex-a15', which works fine for <domain type='qemu'>, but fails for type='kvm'
2023-04-14T21:03:03.392256Z qemu-system-aarch64: KVM is not supported for this guest CPU type
Do we need to go a step further and define a default CPU (presumably host-passthrough) for machine type 'virt' for kvm domains on aarch64?
Even for TCG, you're probably going to want to use something newer and more featureful than the default. Heck, even on x86_64 the default CPU model is pretty terrible and you really want to be using either host-model or host-passthrough.
Nod. The default for 'pc' machine type is qemu64 IIRC :-).
There's some movement in QEMU land when it comes to adding proper support for CPU models on Arm. So I would leave things as they are for now, in the hope that in the not-so-distant future we're going to be able to make host-model work across both TCG and KVM.
Sounds good. Thanks for the review! Your comments have been incorporated in V2 https://listman.redhat.com/archives/libvir-list/2023-April/239435.html Regards, Jim
participants (2)
-
Andrea Bolognani
-
Jim Fehlig