This patch series introduces the necessary changes to
support the power11 CPU and power11 host in libvirt.
Additionally, it updates the QEMU capabilities with
the latest QEMU version v10.0.0-rc2 to include power11
in the capabilities tests.During testing of v2 patches
found a bug in qemu which sets wrong default cpu for
pre-9.0 machines, that was fixed in qemu v10.0.0-rc2.

Patch Summary:
Patch 0001: tests: Pin pseries-2.7 tests to the version 7.0.
Patch 0002: Fix: qemuhotplugtest Set the cpu version at source as POWER9.
Patch 0003: Add capabilities test support for QEMU 10.0.0 on PPC64.
Patch 0004: Add POWER11 CPU model support.
Patch 0005: Add POWER11 host model support and accept case-insensitive.

The corresponding patches for the Linux kernel and QEMU
are already upstream. Relevant links are provided below:

Linux kernel patches:
1. Linux P11 support: commit c2ed087ed35c ("powerpc: Add Power11 architected 
and raw mode")
2. Linux P11 KVM support: commit 96e266e3bcd6 ("KVM: PPC: Book3S HV: Add 
Power11 capability support for Nested PAPR guests")
Qemu patches:
3. Qemu P11 support: commit 273db89bcaf4 ("ppc/pseries: Add Power11 cpu type")
4. Qemu P11 DD02.0 support: commit c0d964076c3e ("target/ppc: Add Power11 DD2.0 
processor")
5. Qemu pre-9.0 pseries michines changing default cpu with Qemu commit 
1490d0bcdfcb ("ppc/spapr: fix default cpu for pre-9.0 machines.").

Signed-off-by: Narayana Murty N <nnmli...@linux.ibm.com>

----
Changelog:
-V2:https://lists.libvirt.org/archives/list/devel@lists.libvirt.org/thread/JQ5UJFWJG35OFX54RQIDHFUSX3RIYIYP/?sort=thread
  *Instead of removing pseries-2.7 related tests, they are now pinned to the 
latest available capabilities version 7.0.0.
  *patch0003: description explained why the cpu version changed.
  *change the cpu model name to lower case.
  *Fixing the hotplugtest by setting  the cpu version at source as POWER9
  *default CPU change for pseries machines preior to pseries-9.0 tests cases 
for tcg fixed.
  * Fixing the compat models check for host CPU names in both lowercase and 
uppercase.
-V1:https://lists.libvirt.org/archives/list/devel@lists.libvirt.org/thread/4A3IND2QP5CE654XE755ICRZKLUNYXAE/
  *Addressed v2 patch readability issues.



Narayana Murty N (5):
  tests: Pin pseries-2.7 tests to the version 7.0
  tests: qemuhotplugtest: Set the cpu version at source for PPC64 tests
  tests: Add capabilities for QEMU 10.0.0 on ppc64
  cpu_map: Add POWER11 cpu model support
  cpu_ppc64: Add POWER11 hostmodel support and accept case insensitive

 src/cpu/cpu_ppc64.c                           |    11 +-
 src/cpu_map/index.xml                         |     1 +
 src/cpu_map/meson.build                       |     1 +
 src/cpu_map/ppc64_POWER11.xml                 |     6 +
 tests/domaincapsdata/qemu_10.0.0.ppc64.xml    |   191 +
 .../caps_10.0.0_ppc64.replies                 | 39513 ++++++++++++++++
 .../caps_10.0.0_ppc64.xml                     |  1090 +
 .../ppc64-modern-bulk-domain.xml              |     3 +-
 .../ppc64-modern-individual-domain.xml        |     3 +-
 .../disk-floppy-pseries.ppc64-latest.xml      |     2 +-
 .../memory-hotplug-nvdimm-ppc64.xml           |     3 +-
 .../memory-hotplug-ppc64-nonuma.xml           |     3 +
 .../panic-pseries.ppc64-latest.args           |     2 +-
 .../panic-pseries.ppc64-latest.xml            |     2 +-
 ...ault-cpu-kvm-pseries-2.7.ppc64-7.0.0.args} |     0
 ...fault-cpu-kvm-pseries-2.7.ppc64-7.0.0.xml} |     0
 ...ault-cpu-kvm-pseries-3.1.ppc64-latest.args |     2 +-
 ...fault-cpu-kvm-pseries-3.1.ppc64-latest.xml |     2 +-
 ...ault-cpu-kvm-pseries-4.2.ppc64-latest.args |     2 +-
 ...fault-cpu-kvm-pseries-4.2.ppc64-latest.xml |     2 +-
 ...ault-cpu-tcg-pseries-2.7.ppc64-7.0.0.args} |     0
 ...fault-cpu-tcg-pseries-2.7.ppc64-7.0.0.xml} |     0
 ...efault-models.ppc64-latest.abi-update.args |     4 +-
 ...default-models.ppc64-latest.abi-update.xml |     2 +-
 ...4-pseries-default-models.ppc64-latest.args |     4 +-
 ...64-pseries-default-models.ppc64-latest.xml |     2 +-
 .../ppc64-pseries-graphics.ppc64-latest.args  |     4 +-
 .../ppc64-pseries-graphics.ppc64-latest.xml   |     2 +-
 .../ppc64-pseries-headless.ppc64-latest.args  |     4 +-
 .../ppc64-pseries-headless.ppc64-latest.xml   |     2 +-
 ...eries-minimal.ppc64-latest.abi-update.args |     2 +-
 ...series-minimal.ppc64-latest.abi-update.xml |     2 +-
 .../ppc64-pseries-minimal.ppc64-latest.args   |     2 +-
 .../ppc64-pseries-minimal.ppc64-latest.xml    |     2 +-
 .../ppc64-tpmproxy-single.ppc64-latest.args   |     2 +-
 .../ppc64-tpmproxy-single.ppc64-latest.xml    |     2 +-
 .../ppc64-tpmproxy-with-tpm.ppc64-latest.args |     2 +-
 .../ppc64-tpmproxy-with-tpm.ppc64-latest.xml  |     2 +-
 .../pseries-basic.ppc64-latest.args           |     2 +-
 .../pseries-basic.ppc64-latest.xml            |     2 +-
 .../pseries-console-virtio.ppc64-latest.args  |     2 +-
 .../pseries-console-virtio.ppc64-latest.xml   |     2 +-
 ...eries-cpu-compat-power11.ppc64-latest.args |    31 +
 ...series-cpu-compat-power11.ppc64-latest.err |     1 +
 ...series-cpu-compat-power11.ppc64-latest.xml |    29 +
 .../pseries-cpu-compat-power11.xml            |    19 +
 .../pseries-cpu-le.ppc64-latest.args          |     2 +-
 .../pseries-cpu-le.ppc64-latest.xml           |     2 +-
 .../pseries-features.ppc64-latest.args        |     2 +-
 .../pseries-features.ppc64-latest.xml         |     2 +-
 .../pseries-hostdevs-1.ppc64-latest.args      |     2 +-
 .../pseries-hostdevs-1.ppc64-latest.xml       |     2 +-
 .../pseries-hostdevs-2.ppc64-latest.args      |     2 +-
 .../pseries-hostdevs-2.ppc64-latest.xml       |     2 +-
 .../pseries-hostdevs-3.ppc64-latest.args      |     2 +-
 .../pseries-hostdevs-3.ppc64-latest.xml       |     2 +-
 .../pseries-many-buses-1.ppc64-latest.args    |     2 +-
 .../pseries-many-buses-1.ppc64-latest.xml     |     2 +-
 .../pseries-many-buses-2.ppc64-latest.args    |     2 +-
 .../pseries-many-buses-2.ppc64-latest.xml     |     2 +-
 .../pseries-many-devices.ppc64-latest.args    |     2 +-
 .../pseries-many-devices.ppc64-latest.xml     |     2 +-
 .../pseries-nvram.ppc64-latest.args           |     2 +-
 .../pseries-nvram.ppc64-latest.xml            |     2 +-
 .../pseries-panic-missing.ppc64-latest.args   |     2 +-
 .../pseries-panic-missing.ppc64-latest.xml    |     2 +-
 ...pseries-panic-no-address.ppc64-latest.args |     2 +-
 .../pseries-panic-no-address.ppc64-latest.xml |     2 +-
 ...ries-phb-default-missing.ppc64-latest.args |     2 +-
 ...eries-phb-default-missing.ppc64-latest.xml |     2 +-
 .../pseries-phb-numa-node.ppc64-latest.args   |     2 +-
 .../pseries-phb-numa-node.ppc64-latest.xml    |     2 +-
 .../pseries-phb-simple.ppc64-latest.args      |     6 +-
 .../pseries-phb-simple.ppc64-latest.xml       |     2 +-
 .../pseries-phb-user-alias.ppc64-latest.args  |     6 +-
 .../pseries-phb-user-alias.ppc64-latest.xml   |     2 +-
 .../pseries-serial-native.ppc64-latest.args   |     2 +-
 .../pseries-serial-native.ppc64-latest.xml    |     2 +-
 .../pseries-serial-pci.ppc64-latest.args      |     2 +-
 .../pseries-serial-pci.ppc64-latest.xml       |     2 +-
 .../pseries-serial-usb.ppc64-latest.args      |     2 +-
 .../pseries-serial-usb.ppc64-latest.xml       |     2 +-
 .../pseries-usb-default.ppc64-latest.args     |     2 +-
 .../pseries-usb-default.ppc64-latest.xml      |     2 +-
 .../pseries-usb-kbd.ppc64-latest.args         |     2 +-
 .../pseries-usb-kbd.ppc64-latest.xml          |     2 +-
 .../pseries-usb-multi.ppc64-latest.args       |     2 +-
 .../pseries-usb-multi.ppc64-latest.xml        |     2 +-
 ...series-vio-user-assigned.ppc64-latest.args |     7 +-
 ...pseries-vio-user-assigned.ppc64-latest.xml |     2 +-
 .../pseries-vio.ppc64-latest.args             |     7 +-
 .../pseries-vio.ppc64-latest.xml              |     2 +-
 ...fault-pseries.ppc64-latest.abi-update.args |     2 +-
 ...efault-pseries.ppc64-latest.abi-update.xml |     2 +-
 ...ntroller-default-pseries.ppc64-latest.args |     2 +-
 ...ontroller-default-pseries.ppc64-latest.xml |     2 +-
 ...fault-unavailable-pseries.ppc64-latest.xml |     2 +-
 tests/qemuxmlconftest.c                       |     8 +-
 tests/testutilshostcpus.h                     |    11 +
 tests/testutilsqemu.c                         |     4 +
 tests/testutilsqemu.h                         |     1 +
 101 files changed, 41008 insertions(+), 103 deletions(-)
 create mode 100644 src/cpu_map/ppc64_POWER11.xml
 create mode 100644 tests/domaincapsdata/qemu_10.0.0.ppc64.xml
 create mode 100644 tests/qemucapabilitiesdata/caps_10.0.0_ppc64.replies
 create mode 100644 tests/qemucapabilitiesdata/caps_10.0.0_ppc64.xml
 rename 
tests/qemuxmlconfdata/{ppc64-default-cpu-kvm-pseries-2.7.ppc64-latest.args => 
ppc64-default-cpu-kvm-pseries-2.7.ppc64-7.0.0.args} (100%)
 rename 
tests/qemuxmlconfdata/{ppc64-default-cpu-kvm-pseries-2.7.ppc64-latest.xml => 
ppc64-default-cpu-kvm-pseries-2.7.ppc64-7.0.0.xml} (100%)
 rename 
tests/qemuxmlconfdata/{ppc64-default-cpu-tcg-pseries-2.7.ppc64-latest.args => 
ppc64-default-cpu-tcg-pseries-2.7.ppc64-7.0.0.args} (100%)
 rename 
tests/qemuxmlconfdata/{ppc64-default-cpu-tcg-pseries-2.7.ppc64-latest.xml => 
ppc64-default-cpu-tcg-pseries-2.7.ppc64-7.0.0.xml} (100%)
 create mode 100644 
tests/qemuxmlconfdata/pseries-cpu-compat-power11.ppc64-latest.args
 create mode 100644 
tests/qemuxmlconfdata/pseries-cpu-compat-power11.ppc64-latest.err
 create mode 100644 
tests/qemuxmlconfdata/pseries-cpu-compat-power11.ppc64-latest.xml
 create mode 100644 tests/qemuxmlconfdata/pseries-cpu-compat-power11.xml

--
2.48.1

Reply via email to