[PATCH 00/24] qemu capability testing cleanups and improvements (part 2)

Peter Krempa posted 24 patches 1 year, 1 month ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/cover.1678982996.git.pkrempa@redhat.com
src/bhyve/bhyve_driver.c                      |     5 +-
src/ch/ch_conf.c                              |     2 +-
src/conf/schemas/capability.rng               |     1 +
src/esx/esx_vi.h                              |     4 +-
src/lxc/lxc_driver.c                          |     5 +-
src/network/bridge_driver_linux.c             |     2 +-
src/openvz/openvz_conf.c                      |     2 +-
src/qemu/qemu_capabilities.c                  |    25 +-
src/qemu/qemu_capabilities.h                  |     3 +-
src/qemu/qemu_capspriv.h                      |     3 +
src/util/virdnsmasq.c                         |     4 +-
src/util/virfirewalld.c                       |     4 +-
src/util/virfirewalld.h                       |     2 +-
src/util/virstring.c                          |     4 +-
src/util/virstring.h                          |     2 +-
src/vbox/vbox_common.c                        |     5 +-
src/vmware/vmware_conf.c                      |     5 +-
src/vz/vz_utils.c                             |     5 +-
.../qemu_7.0.0-hvf.aarch64+hvf.xml            |   174 +
.../qemu_7.2.0-hvf.x86_64+hvf.xml             |   183 +
.../qemu_7.2.0-tcg.x86_64+hvf.xml             |   264 +
tests/domaincapsmock.c                        |     6 -
tests/domaincapstest.c                        |   128 +-
tests/qemucapabilitiesdata/README.rst         |   113 +
...h64.replies => caps_4.2.0_aarch64.replies} |     0
...2.0.aarch64.xml => caps_4.2.0_aarch64.xml} |     0
...ppc64.replies => caps_4.2.0_ppc64.replies} |     0
...s_4.2.0.ppc64.xml => caps_4.2.0_ppc64.xml} |     0
...s390x.replies => caps_4.2.0_s390x.replies} |     0
...s_4.2.0.s390x.xml => caps_4.2.0_s390x.xml} |     0
...6_64.replies => caps_4.2.0_x86_64.replies} |     0
...4.2.0.x86_64.xml => caps_4.2.0_x86_64.xml} |     0
...h64.replies => caps_5.0.0_aarch64.replies} |     0
...0.0.aarch64.xml => caps_5.0.0_aarch64.xml} |     0
...ppc64.replies => caps_5.0.0_ppc64.replies} |     0
...s_5.0.0.ppc64.xml => caps_5.0.0_ppc64.xml} |     0
...v64.replies => caps_5.0.0_riscv64.replies} |     0
...0.0.riscv64.xml => caps_5.0.0_riscv64.xml} |     0
...6_64.replies => caps_5.0.0_x86_64.replies} |     0
...5.0.0.x86_64.xml => caps_5.0.0_x86_64.xml} |     0
...sparc.replies => caps_5.1.0_sparc.replies} |     0
...s_5.1.0.sparc.xml => caps_5.1.0_sparc.xml} |     0
...6_64.replies => caps_5.1.0_x86_64.replies} |     0
...5.1.0.x86_64.xml => caps_5.1.0_x86_64.xml} |     0
...h64.replies => caps_5.2.0_aarch64.replies} |     0
...2.0.aarch64.xml => caps_5.2.0_aarch64.xml} |     0
...ppc64.replies => caps_5.2.0_ppc64.replies} |     0
...s_5.2.0.ppc64.xml => caps_5.2.0_ppc64.xml} |     0
...v64.replies => caps_5.2.0_riscv64.replies} |     0
...2.0.riscv64.xml => caps_5.2.0_riscv64.xml} |     0
...s390x.replies => caps_5.2.0_s390x.replies} |     0
...s_5.2.0.s390x.xml => caps_5.2.0_s390x.xml} |     0
...6_64.replies => caps_5.2.0_x86_64.replies} |     0
...5.2.0.x86_64.xml => caps_5.2.0_x86_64.xml} |     0
...h64.replies => caps_6.0.0_aarch64.replies} |     0
...0.0.aarch64.xml => caps_6.0.0_aarch64.xml} |     0
...s390x.replies => caps_6.0.0_s390x.replies} |     0
...s_6.0.0.s390x.xml => caps_6.0.0_s390x.xml} |     0
...6_64.replies => caps_6.0.0_x86_64.replies} |     0
...6.0.0.x86_64.xml => caps_6.0.0_x86_64.xml} |     0
...6_64.replies => caps_6.1.0_x86_64.replies} |     0
...6.1.0.x86_64.xml => caps_6.1.0_x86_64.xml} |     0
...h64.replies => caps_6.2.0_aarch64.replies} |     0
...2.0.aarch64.xml => caps_6.2.0_aarch64.xml} |     0
...ppc64.replies => caps_6.2.0_ppc64.replies} |     0
...s_6.2.0.ppc64.xml => caps_6.2.0_ppc64.xml} |     0
...6_64.replies => caps_6.2.0_x86_64.replies} |     0
...6.2.0.x86_64.xml => caps_6.2.0_x86_64.xml} |     0
.../caps_7.0.0_aarch64+hvf.replies            | 32393 +++++++++++++
.../caps_7.0.0_aarch64+hvf.xml                |   502 +
...h64.replies => caps_7.0.0_aarch64.replies} |     0
...0.0.aarch64.xml => caps_7.0.0_aarch64.xml} |     0
...ppc64.replies => caps_7.0.0_ppc64.replies} |     0
...s_7.0.0.ppc64.xml => caps_7.0.0_ppc64.xml} |     0
...6_64.replies => caps_7.0.0_x86_64.replies} |     0
...7.0.0.x86_64.xml => caps_7.0.0_x86_64.xml} |     0
...ppc64.replies => caps_7.1.0_ppc64.replies} |     0
...s_7.1.0.ppc64.xml => caps_7.1.0_ppc64.xml} |     0
...6_64.replies => caps_7.1.0_x86_64.replies} |     0
...7.1.0.x86_64.xml => caps_7.1.0_x86_64.xml} |     0
...2.0.ppc.replies => caps_7.2.0_ppc.replies} |     0
...{caps_7.2.0.ppc.xml => caps_7.2.0_ppc.xml} |     0
.../caps_7.2.0_x86_64+hvf.replies             | 39399 ++++++++++++++++
.../caps_7.2.0_x86_64+hvf.xml                 |  3250 ++
...6_64.replies => caps_7.2.0_x86_64.replies} |     0
...7.2.0.x86_64.xml => caps_7.2.0_x86_64.xml} |     0
...v64.replies => caps_8.0.0_riscv64.replies} |     0
...0.0.riscv64.xml => caps_8.0.0_riscv64.xml} |     0
...6_64.replies => caps_8.0.0_x86_64.replies} |     0
...8.0.0.x86_64.xml => caps_8.0.0_x86_64.xml} |     0
tests/qemucapabilitiesnumbering.c             |     5 +-
tests/qemucapabilitiestest.c                  |    46 +-
.../qemucaps2xmloutdata/caps.aarch64+hvf.xml  |    27 +
tests/qemucaps2xmloutdata/caps.x86_64+hvf.xml |    28 +
tests/qemucaps2xmltest.c                      |     9 +-
tests/qemumigrationcookiexmltest.c            |     5 -
...-aarch64-virt-headless.aarch64-latest.args |    53 +
.../hvf-aarch64-virt-headless.args            |    51 -
.../hvf-x86_64-q35-headless.args              |    50 -
...hvf-x86_64-q35-headless.x86_64-latest.args |    54 +
tests/qemuxml2argvtest.c                      |    42 +-
...-aarch64-virt-headless.aarch64-latest.xml} |     0
...hvf-x86_64-q35-headless.x86_64-latest.xml} |     3 +
tests/qemuxml2xmltest.c                       |    45 +-
tests/testutilsqemu.c                         |   307 +-
tests/testutilsqemu.h                         |    13 +-
tests/utiltest.c                              |     8 +-
tools/virt-host-validate-common.c             |     2 +-
108 files changed, 76757 insertions(+), 486 deletions(-)
create mode 100644 tests/domaincapsdata/qemu_7.0.0-hvf.aarch64+hvf.xml
create mode 100644 tests/domaincapsdata/qemu_7.2.0-hvf.x86_64+hvf.xml
create mode 100644 tests/domaincapsdata/qemu_7.2.0-tcg.x86_64+hvf.xml
create mode 100644 tests/qemucapabilitiesdata/README.rst
rename tests/qemucapabilitiesdata/{caps_4.2.0.aarch64.replies => caps_4.2.0_aarch64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_4.2.0.aarch64.xml => caps_4.2.0_aarch64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_4.2.0.ppc64.replies => caps_4.2.0_ppc64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_4.2.0.ppc64.xml => caps_4.2.0_ppc64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_4.2.0.s390x.replies => caps_4.2.0_s390x.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_4.2.0.s390x.xml => caps_4.2.0_s390x.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_4.2.0.x86_64.replies => caps_4.2.0_x86_64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_4.2.0.x86_64.xml => caps_4.2.0_x86_64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_5.0.0.aarch64.replies => caps_5.0.0_aarch64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_5.0.0.aarch64.xml => caps_5.0.0_aarch64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_5.0.0.ppc64.replies => caps_5.0.0_ppc64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_5.0.0.ppc64.xml => caps_5.0.0_ppc64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_5.0.0.riscv64.replies => caps_5.0.0_riscv64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_5.0.0.riscv64.xml => caps_5.0.0_riscv64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_5.0.0.x86_64.replies => caps_5.0.0_x86_64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_5.0.0.x86_64.xml => caps_5.0.0_x86_64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_5.1.0.sparc.replies => caps_5.1.0_sparc.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_5.1.0.sparc.xml => caps_5.1.0_sparc.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_5.1.0.x86_64.replies => caps_5.1.0_x86_64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_5.1.0.x86_64.xml => caps_5.1.0_x86_64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_5.2.0.aarch64.replies => caps_5.2.0_aarch64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_5.2.0.aarch64.xml => caps_5.2.0_aarch64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_5.2.0.ppc64.replies => caps_5.2.0_ppc64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_5.2.0.ppc64.xml => caps_5.2.0_ppc64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_5.2.0.riscv64.replies => caps_5.2.0_riscv64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_5.2.0.riscv64.xml => caps_5.2.0_riscv64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_5.2.0.s390x.replies => caps_5.2.0_s390x.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_5.2.0.s390x.xml => caps_5.2.0_s390x.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_5.2.0.x86_64.replies => caps_5.2.0_x86_64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_5.2.0.x86_64.xml => caps_5.2.0_x86_64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_6.0.0.aarch64.replies => caps_6.0.0_aarch64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_6.0.0.aarch64.xml => caps_6.0.0_aarch64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_6.0.0.s390x.replies => caps_6.0.0_s390x.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_6.0.0.s390x.xml => caps_6.0.0_s390x.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_6.0.0.x86_64.replies => caps_6.0.0_x86_64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_6.0.0.x86_64.xml => caps_6.0.0_x86_64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_6.1.0.x86_64.replies => caps_6.1.0_x86_64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_6.1.0.x86_64.xml => caps_6.1.0_x86_64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_6.2.0.aarch64.replies => caps_6.2.0_aarch64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_6.2.0.aarch64.xml => caps_6.2.0_aarch64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_6.2.0.ppc64.replies => caps_6.2.0_ppc64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_6.2.0.ppc64.xml => caps_6.2.0_ppc64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_6.2.0.x86_64.replies => caps_6.2.0_x86_64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_6.2.0.x86_64.xml => caps_6.2.0_x86_64.xml} (100%)
create mode 100644 tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.replies
create mode 100644 tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml
rename tests/qemucapabilitiesdata/{caps_7.0.0.aarch64.replies => caps_7.0.0_aarch64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_7.0.0.aarch64.xml => caps_7.0.0_aarch64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_7.0.0.ppc64.replies => caps_7.0.0_ppc64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_7.0.0.ppc64.xml => caps_7.0.0_ppc64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_7.0.0.x86_64.replies => caps_7.0.0_x86_64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_7.0.0.x86_64.xml => caps_7.0.0_x86_64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_7.1.0.ppc64.replies => caps_7.1.0_ppc64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_7.1.0.ppc64.xml => caps_7.1.0_ppc64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_7.1.0.x86_64.replies => caps_7.1.0_x86_64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_7.1.0.x86_64.xml => caps_7.1.0_x86_64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_7.2.0.ppc.replies => caps_7.2.0_ppc.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_7.2.0.ppc.xml => caps_7.2.0_ppc.xml} (100%)
create mode 100644 tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.replies
create mode 100644 tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.xml
rename tests/qemucapabilitiesdata/{caps_7.2.0.x86_64.replies => caps_7.2.0_x86_64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_7.2.0.x86_64.xml => caps_7.2.0_x86_64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_8.0.0.riscv64.replies => caps_8.0.0_riscv64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_8.0.0.riscv64.xml => caps_8.0.0_riscv64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_8.0.0.x86_64.replies => caps_8.0.0_x86_64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_8.0.0.x86_64.xml => caps_8.0.0_x86_64.xml} (100%)
create mode 100644 tests/qemucaps2xmloutdata/caps.aarch64+hvf.xml
create mode 100644 tests/qemucaps2xmloutdata/caps.x86_64+hvf.xml
create mode 100644 tests/qemuxml2argvdata/hvf-aarch64-virt-headless.aarch64-latest.args
delete mode 100644 tests/qemuxml2argvdata/hvf-aarch64-virt-headless.args
delete mode 100644 tests/qemuxml2argvdata/hvf-x86_64-q35-headless.args
create mode 100644 tests/qemuxml2argvdata/hvf-x86_64-q35-headless.x86_64-latest.args
rename tests/qemuxml2xmloutdata/{hvf-aarch64-virt-headless.xml => hvf-aarch64-virt-headless.aarch64-latest.xml} (100%)
rename tests/qemuxml2xmloutdata/{hvf-x86_64-q35-headless.xml => hvf-x86_64-q35-headless.x86_64-latest.xml} (97%)
[PATCH 00/24] qemu capability testing cleanups and improvements (part 2)
Posted by Peter Krempa 1 year, 1 month ago
This part focuses on getting rid of the fake-caps infrastructure for
testing qemu accelerated via HVF on OSX.

Note: The test data that I'm using are based on the linux test data we
have in the repository.

It'll be great to get a real dump of qemu running on OSX but I don't
have such system.

Peter Krempa (24):
  virStringParseVersion: Parse into 'unsigned long long'
  qemumigrationcookiexmltest: Don't fetch latest caps files without
    using them
  domaincapstest: Make construction of filename more extensible
  domaincapstest: Restructure code to avoid disabling of warnings
  qemucapabilitiesdata: Separate version from architecture with a '_'
  testQemuGetLatestCaps: Process capabilities for all architectures in
    one pass
  testQemuGetLatestCapsForArch: Rewrite using testQemuGetLatestCaps
  tests: qemucapabilitiesdata: Add README file
  tests: Add support for multiple variants of data for the same qemu
    version+architecture
  domaincapstest: Propagate variant name into doTestQemuInternal
  schema: capabilities: Add 'hvf' virt type into list of allowed types
  domaincapstest: Add testing infrastructure for the '+hvf' variant
  qemu: capabilities: Fix testing of 'TCG' capabilities probing
  virQEMUCapsProbeHVF: Factor out setting of the capability
  tests: Mock virQEMUCapsProbeHVF directly in qemucapabilitiestest
  qemucapabilitiestest: Add support for '+hvf' variant
  qemucapabilitiesdata: Add (fake) '+hvf' variant of x86_64 data
  qemucapabilitiesdata: Add (fake) '+hvf' variant of aarch64 data
  testutilsqemu: Add support for specifying the variant for
    qemuxml2(argv|xml)test
  qemuxml2(argv|xml): Convert "hvf-x86_64-q35-headless" test case to
    real capapilities
  qemuxml2(argv|xml): Convert "hvf-aarch64-virt-headless" test case to
    real capapilities
  qemuxml2argvtest: Remove infrastructure for fake-caps testing on OSX
  qemuxml2xmltest: Remove infrastructure for fake-caps testing on OSX
  testutilsqemu: Remove infrastructure for fake-caps testing of OSX

 src/bhyve/bhyve_driver.c                      |     5 +-
 src/ch/ch_conf.c                              |     2 +-
 src/conf/schemas/capability.rng               |     1 +
 src/esx/esx_vi.h                              |     4 +-
 src/lxc/lxc_driver.c                          |     5 +-
 src/network/bridge_driver_linux.c             |     2 +-
 src/openvz/openvz_conf.c                      |     2 +-
 src/qemu/qemu_capabilities.c                  |    25 +-
 src/qemu/qemu_capabilities.h                  |     3 +-
 src/qemu/qemu_capspriv.h                      |     3 +
 src/util/virdnsmasq.c                         |     4 +-
 src/util/virfirewalld.c                       |     4 +-
 src/util/virfirewalld.h                       |     2 +-
 src/util/virstring.c                          |     4 +-
 src/util/virstring.h                          |     2 +-
 src/vbox/vbox_common.c                        |     5 +-
 src/vmware/vmware_conf.c                      |     5 +-
 src/vz/vz_utils.c                             |     5 +-
 .../qemu_7.0.0-hvf.aarch64+hvf.xml            |   174 +
 .../qemu_7.2.0-hvf.x86_64+hvf.xml             |   183 +
 .../qemu_7.2.0-tcg.x86_64+hvf.xml             |   264 +
 tests/domaincapsmock.c                        |     6 -
 tests/domaincapstest.c                        |   128 +-
 tests/qemucapabilitiesdata/README.rst         |   113 +
 ...h64.replies => caps_4.2.0_aarch64.replies} |     0
 ...2.0.aarch64.xml => caps_4.2.0_aarch64.xml} |     0
 ...ppc64.replies => caps_4.2.0_ppc64.replies} |     0
 ...s_4.2.0.ppc64.xml => caps_4.2.0_ppc64.xml} |     0
 ...s390x.replies => caps_4.2.0_s390x.replies} |     0
 ...s_4.2.0.s390x.xml => caps_4.2.0_s390x.xml} |     0
 ...6_64.replies => caps_4.2.0_x86_64.replies} |     0
 ...4.2.0.x86_64.xml => caps_4.2.0_x86_64.xml} |     0
 ...h64.replies => caps_5.0.0_aarch64.replies} |     0
 ...0.0.aarch64.xml => caps_5.0.0_aarch64.xml} |     0
 ...ppc64.replies => caps_5.0.0_ppc64.replies} |     0
 ...s_5.0.0.ppc64.xml => caps_5.0.0_ppc64.xml} |     0
 ...v64.replies => caps_5.0.0_riscv64.replies} |     0
 ...0.0.riscv64.xml => caps_5.0.0_riscv64.xml} |     0
 ...6_64.replies => caps_5.0.0_x86_64.replies} |     0
 ...5.0.0.x86_64.xml => caps_5.0.0_x86_64.xml} |     0
 ...sparc.replies => caps_5.1.0_sparc.replies} |     0
 ...s_5.1.0.sparc.xml => caps_5.1.0_sparc.xml} |     0
 ...6_64.replies => caps_5.1.0_x86_64.replies} |     0
 ...5.1.0.x86_64.xml => caps_5.1.0_x86_64.xml} |     0
 ...h64.replies => caps_5.2.0_aarch64.replies} |     0
 ...2.0.aarch64.xml => caps_5.2.0_aarch64.xml} |     0
 ...ppc64.replies => caps_5.2.0_ppc64.replies} |     0
 ...s_5.2.0.ppc64.xml => caps_5.2.0_ppc64.xml} |     0
 ...v64.replies => caps_5.2.0_riscv64.replies} |     0
 ...2.0.riscv64.xml => caps_5.2.0_riscv64.xml} |     0
 ...s390x.replies => caps_5.2.0_s390x.replies} |     0
 ...s_5.2.0.s390x.xml => caps_5.2.0_s390x.xml} |     0
 ...6_64.replies => caps_5.2.0_x86_64.replies} |     0
 ...5.2.0.x86_64.xml => caps_5.2.0_x86_64.xml} |     0
 ...h64.replies => caps_6.0.0_aarch64.replies} |     0
 ...0.0.aarch64.xml => caps_6.0.0_aarch64.xml} |     0
 ...s390x.replies => caps_6.0.0_s390x.replies} |     0
 ...s_6.0.0.s390x.xml => caps_6.0.0_s390x.xml} |     0
 ...6_64.replies => caps_6.0.0_x86_64.replies} |     0
 ...6.0.0.x86_64.xml => caps_6.0.0_x86_64.xml} |     0
 ...6_64.replies => caps_6.1.0_x86_64.replies} |     0
 ...6.1.0.x86_64.xml => caps_6.1.0_x86_64.xml} |     0
 ...h64.replies => caps_6.2.0_aarch64.replies} |     0
 ...2.0.aarch64.xml => caps_6.2.0_aarch64.xml} |     0
 ...ppc64.replies => caps_6.2.0_ppc64.replies} |     0
 ...s_6.2.0.ppc64.xml => caps_6.2.0_ppc64.xml} |     0
 ...6_64.replies => caps_6.2.0_x86_64.replies} |     0
 ...6.2.0.x86_64.xml => caps_6.2.0_x86_64.xml} |     0
 .../caps_7.0.0_aarch64+hvf.replies            | 32393 +++++++++++++
 .../caps_7.0.0_aarch64+hvf.xml                |   502 +
 ...h64.replies => caps_7.0.0_aarch64.replies} |     0
 ...0.0.aarch64.xml => caps_7.0.0_aarch64.xml} |     0
 ...ppc64.replies => caps_7.0.0_ppc64.replies} |     0
 ...s_7.0.0.ppc64.xml => caps_7.0.0_ppc64.xml} |     0
 ...6_64.replies => caps_7.0.0_x86_64.replies} |     0
 ...7.0.0.x86_64.xml => caps_7.0.0_x86_64.xml} |     0
 ...ppc64.replies => caps_7.1.0_ppc64.replies} |     0
 ...s_7.1.0.ppc64.xml => caps_7.1.0_ppc64.xml} |     0
 ...6_64.replies => caps_7.1.0_x86_64.replies} |     0
 ...7.1.0.x86_64.xml => caps_7.1.0_x86_64.xml} |     0
 ...2.0.ppc.replies => caps_7.2.0_ppc.replies} |     0
 ...{caps_7.2.0.ppc.xml => caps_7.2.0_ppc.xml} |     0
 .../caps_7.2.0_x86_64+hvf.replies             | 39399 ++++++++++++++++
 .../caps_7.2.0_x86_64+hvf.xml                 |  3250 ++
 ...6_64.replies => caps_7.2.0_x86_64.replies} |     0
 ...7.2.0.x86_64.xml => caps_7.2.0_x86_64.xml} |     0
 ...v64.replies => caps_8.0.0_riscv64.replies} |     0
 ...0.0.riscv64.xml => caps_8.0.0_riscv64.xml} |     0
 ...6_64.replies => caps_8.0.0_x86_64.replies} |     0
 ...8.0.0.x86_64.xml => caps_8.0.0_x86_64.xml} |     0
 tests/qemucapabilitiesnumbering.c             |     5 +-
 tests/qemucapabilitiestest.c                  |    46 +-
 .../qemucaps2xmloutdata/caps.aarch64+hvf.xml  |    27 +
 tests/qemucaps2xmloutdata/caps.x86_64+hvf.xml |    28 +
 tests/qemucaps2xmltest.c                      |     9 +-
 tests/qemumigrationcookiexmltest.c            |     5 -
 ...-aarch64-virt-headless.aarch64-latest.args |    53 +
 .../hvf-aarch64-virt-headless.args            |    51 -
 .../hvf-x86_64-q35-headless.args              |    50 -
 ...hvf-x86_64-q35-headless.x86_64-latest.args |    54 +
 tests/qemuxml2argvtest.c                      |    42 +-
 ...-aarch64-virt-headless.aarch64-latest.xml} |     0
 ...hvf-x86_64-q35-headless.x86_64-latest.xml} |     3 +
 tests/qemuxml2xmltest.c                       |    45 +-
 tests/testutilsqemu.c                         |   307 +-
 tests/testutilsqemu.h                         |    13 +-
 tests/utiltest.c                              |     8 +-
 tools/virt-host-validate-common.c             |     2 +-
 108 files changed, 76757 insertions(+), 486 deletions(-)
 create mode 100644 tests/domaincapsdata/qemu_7.0.0-hvf.aarch64+hvf.xml
 create mode 100644 tests/domaincapsdata/qemu_7.2.0-hvf.x86_64+hvf.xml
 create mode 100644 tests/domaincapsdata/qemu_7.2.0-tcg.x86_64+hvf.xml
 create mode 100644 tests/qemucapabilitiesdata/README.rst
 rename tests/qemucapabilitiesdata/{caps_4.2.0.aarch64.replies => caps_4.2.0_aarch64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_4.2.0.aarch64.xml => caps_4.2.0_aarch64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_4.2.0.ppc64.replies => caps_4.2.0_ppc64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_4.2.0.ppc64.xml => caps_4.2.0_ppc64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_4.2.0.s390x.replies => caps_4.2.0_s390x.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_4.2.0.s390x.xml => caps_4.2.0_s390x.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_4.2.0.x86_64.replies => caps_4.2.0_x86_64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_4.2.0.x86_64.xml => caps_4.2.0_x86_64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.0.0.aarch64.replies => caps_5.0.0_aarch64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.0.0.aarch64.xml => caps_5.0.0_aarch64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.0.0.ppc64.replies => caps_5.0.0_ppc64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.0.0.ppc64.xml => caps_5.0.0_ppc64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.0.0.riscv64.replies => caps_5.0.0_riscv64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.0.0.riscv64.xml => caps_5.0.0_riscv64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.0.0.x86_64.replies => caps_5.0.0_x86_64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.0.0.x86_64.xml => caps_5.0.0_x86_64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.1.0.sparc.replies => caps_5.1.0_sparc.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.1.0.sparc.xml => caps_5.1.0_sparc.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.1.0.x86_64.replies => caps_5.1.0_x86_64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.1.0.x86_64.xml => caps_5.1.0_x86_64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.2.0.aarch64.replies => caps_5.2.0_aarch64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.2.0.aarch64.xml => caps_5.2.0_aarch64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.2.0.ppc64.replies => caps_5.2.0_ppc64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.2.0.ppc64.xml => caps_5.2.0_ppc64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.2.0.riscv64.replies => caps_5.2.0_riscv64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.2.0.riscv64.xml => caps_5.2.0_riscv64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.2.0.s390x.replies => caps_5.2.0_s390x.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.2.0.s390x.xml => caps_5.2.0_s390x.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.2.0.x86_64.replies => caps_5.2.0_x86_64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_5.2.0.x86_64.xml => caps_5.2.0_x86_64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.0.0.aarch64.replies => caps_6.0.0_aarch64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.0.0.aarch64.xml => caps_6.0.0_aarch64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.0.0.s390x.replies => caps_6.0.0_s390x.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.0.0.s390x.xml => caps_6.0.0_s390x.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.0.0.x86_64.replies => caps_6.0.0_x86_64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.0.0.x86_64.xml => caps_6.0.0_x86_64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.1.0.x86_64.replies => caps_6.1.0_x86_64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.1.0.x86_64.xml => caps_6.1.0_x86_64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.2.0.aarch64.replies => caps_6.2.0_aarch64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.2.0.aarch64.xml => caps_6.2.0_aarch64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.2.0.ppc64.replies => caps_6.2.0_ppc64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.2.0.ppc64.xml => caps_6.2.0_ppc64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.2.0.x86_64.replies => caps_6.2.0_x86_64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_6.2.0.x86_64.xml => caps_6.2.0_x86_64.xml} (100%)
 create mode 100644 tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.replies
 create mode 100644 tests/qemucapabilitiesdata/caps_7.0.0_aarch64+hvf.xml
 rename tests/qemucapabilitiesdata/{caps_7.0.0.aarch64.replies => caps_7.0.0_aarch64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_7.0.0.aarch64.xml => caps_7.0.0_aarch64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_7.0.0.ppc64.replies => caps_7.0.0_ppc64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_7.0.0.ppc64.xml => caps_7.0.0_ppc64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_7.0.0.x86_64.replies => caps_7.0.0_x86_64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_7.0.0.x86_64.xml => caps_7.0.0_x86_64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_7.1.0.ppc64.replies => caps_7.1.0_ppc64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_7.1.0.ppc64.xml => caps_7.1.0_ppc64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_7.1.0.x86_64.replies => caps_7.1.0_x86_64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_7.1.0.x86_64.xml => caps_7.1.0_x86_64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_7.2.0.ppc.replies => caps_7.2.0_ppc.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_7.2.0.ppc.xml => caps_7.2.0_ppc.xml} (100%)
 create mode 100644 tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.replies
 create mode 100644 tests/qemucapabilitiesdata/caps_7.2.0_x86_64+hvf.xml
 rename tests/qemucapabilitiesdata/{caps_7.2.0.x86_64.replies => caps_7.2.0_x86_64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_7.2.0.x86_64.xml => caps_7.2.0_x86_64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_8.0.0.riscv64.replies => caps_8.0.0_riscv64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_8.0.0.riscv64.xml => caps_8.0.0_riscv64.xml} (100%)
 rename tests/qemucapabilitiesdata/{caps_8.0.0.x86_64.replies => caps_8.0.0_x86_64.replies} (100%)
 rename tests/qemucapabilitiesdata/{caps_8.0.0.x86_64.xml => caps_8.0.0_x86_64.xml} (100%)
 create mode 100644 tests/qemucaps2xmloutdata/caps.aarch64+hvf.xml
 create mode 100644 tests/qemucaps2xmloutdata/caps.x86_64+hvf.xml
 create mode 100644 tests/qemuxml2argvdata/hvf-aarch64-virt-headless.aarch64-latest.args
 delete mode 100644 tests/qemuxml2argvdata/hvf-aarch64-virt-headless.args
 delete mode 100644 tests/qemuxml2argvdata/hvf-x86_64-q35-headless.args
 create mode 100644 tests/qemuxml2argvdata/hvf-x86_64-q35-headless.x86_64-latest.args
 rename tests/qemuxml2xmloutdata/{hvf-aarch64-virt-headless.xml => hvf-aarch64-virt-headless.aarch64-latest.xml} (100%)
 rename tests/qemuxml2xmloutdata/{hvf-x86_64-q35-headless.xml => hvf-x86_64-q35-headless.x86_64-latest.xml} (97%)

-- 
2.39.2
Re: [PATCH 00/24] qemu capability testing cleanups and improvements (part 2)
Posted by Ján Tomko 1 year ago
On a Thursday in 2023, Peter Krempa wrote:
>This part focuses on getting rid of the fake-caps infrastructure for
>testing qemu accelerated via HVF on OSX.
>
>Note: The test data that I'm using are based on the linux test data we
>have in the repository.
>
>It'll be great to get a real dump of qemu running on OSX but I don't
>have such system.
>
>Peter Krempa (24):
>  virStringParseVersion: Parse into 'unsigned long long'
>  qemumigrationcookiexmltest: Don't fetch latest caps files without
>    using them
>  domaincapstest: Make construction of filename more extensible
>  domaincapstest: Restructure code to avoid disabling of warnings
>  qemucapabilitiesdata: Separate version from architecture with a '_'
>  testQemuGetLatestCaps: Process capabilities for all architectures in
>    one pass
>  testQemuGetLatestCapsForArch: Rewrite using testQemuGetLatestCaps
>  tests: qemucapabilitiesdata: Add README file
>  tests: Add support for multiple variants of data for the same qemu
>    version+architecture
>  domaincapstest: Propagate variant name into doTestQemuInternal
>  schema: capabilities: Add 'hvf' virt type into list of allowed types
>  domaincapstest: Add testing infrastructure for the '+hvf' variant
>  qemu: capabilities: Fix testing of 'TCG' capabilities probing
>  virQEMUCapsProbeHVF: Factor out setting of the capability
>  tests: Mock virQEMUCapsProbeHVF directly in qemucapabilitiestest
>  qemucapabilitiestest: Add support for '+hvf' variant
>  qemucapabilitiesdata: Add (fake) '+hvf' variant of x86_64 data
>  qemucapabilitiesdata: Add (fake) '+hvf' variant of aarch64 data
>  testutilsqemu: Add support for specifying the variant for
>    qemuxml2(argv|xml)test
>  qemuxml2(argv|xml): Convert "hvf-x86_64-q35-headless" test case to
>    real capapilities
>  qemuxml2(argv|xml): Convert "hvf-aarch64-virt-headless" test case to
>    real capapilities
>  qemuxml2argvtest: Remove infrastructure for fake-caps testing on OSX
>  qemuxml2xmltest: Remove infrastructure for fake-caps testing on OSX
>  testutilsqemu: Remove infrastructure for fake-caps testing of OSX
>
> src/bhyve/bhyve_driver.c                      |     5 +-
> src/ch/ch_conf.c                              |     2 +-
> src/conf/schemas/capability.rng               |     1 +
> src/esx/esx_vi.h                              |     4 +-

[...]

> tests/utiltest.c                              |     8 +-
> tools/virt-host-validate-common.c             |     2 +-
> 108 files changed, 76757 insertions(+), 486 deletions(-)

Reviewed-by: Ján Tomko <jtomko@redhat.com>

Jano
Re: [PATCH 00/24] qemu capability testing cleanups and improvements (part 2)
Posted by Martin Kletzander 1 year, 1 month ago
On Thu, Mar 16, 2023 at 05:11:29PM +0100, Peter Krempa wrote:
>This part focuses on getting rid of the fake-caps infrastructure for
>testing qemu accelerated via HVF on OSX.
>
>Note: The test data that I'm using are based on the linux test data we
>have in the repository.
>
>It'll be great to get a real dump of qemu running on OSX but I don't
>have such system.
>
>Peter Krempa (24):
>  virStringParseVersion: Parse into 'unsigned long long'
>  qemumigrationcookiexmltest: Don't fetch latest caps files without
>    using them
>  domaincapstest: Make construction of filename more extensible
>  domaincapstest: Restructure code to avoid disabling of warnings
>  qemucapabilitiesdata: Separate version from architecture with a '_'
>  testQemuGetLatestCaps: Process capabilities for all architectures in
>    one pass
>  testQemuGetLatestCapsForArch: Rewrite using testQemuGetLatestCaps
>  tests: qemucapabilitiesdata: Add README file
>  tests: Add support for multiple variants of data for the same qemu
>    version+architecture
>  domaincapstest: Propagate variant name into doTestQemuInternal
>  schema: capabilities: Add 'hvf' virt type into list of allowed types
>  domaincapstest: Add testing infrastructure for the '+hvf' variant
>  qemu: capabilities: Fix testing of 'TCG' capabilities probing
>  virQEMUCapsProbeHVF: Factor out setting of the capability
>  tests: Mock virQEMUCapsProbeHVF directly in qemucapabilitiestest
>  qemucapabilitiestest: Add support for '+hvf' variant
>  qemucapabilitiesdata: Add (fake) '+hvf' variant of x86_64 data
>  qemucapabilitiesdata: Add (fake) '+hvf' variant of aarch64 data
>  testutilsqemu: Add support for specifying the variant for
>    qemuxml2(argv|xml)test
>  qemuxml2(argv|xml): Convert "hvf-x86_64-q35-headless" test case to
>    real capapilities
>  qemuxml2(argv|xml): Convert "hvf-aarch64-virt-headless" test case to
>    real capapilities
>  qemuxml2argvtest: Remove infrastructure for fake-caps testing on OSX
>  qemuxml2xmltest: Remove infrastructure for fake-caps testing on OSX
>  testutilsqemu: Remove infrastructure for fake-caps testing of OSX
>

Reviewed-by: Martin Kletzander <mkletzan@redhat.com>