Edited for brevity. Full version:
$ git fetch
https://gitlab.com/abologna/libvirt.git cpu-clusters
Depends on:
https://lists.libvirt.org/archives/list/devel@lists.libvirt.org/thread/ID...
Andrea Bolognani (11):
tests: Add hostcpudata for machine with CPU clusters
conf: Report CPU clusters in capabilities XML
conf: Allow specifying CPU clusters
qemu: Introduce QEMU_CAPS_SMP_CLUSTERS
qemu: Use CPU clusters for guests
tests: Add test case for CPU clusters
qemu: Make monitor aware of CPU clusters
tests: Verify handling of CPU clusters in QMP data
docs: Tweak documentation for CPU topology
docs: Document CPU clusters
news: Mention support for CPU clusters
NEWS.rst | 6 +
docs/formatcaps.rst | 2 +-
docs/formatdomain.rst | 24 +-
src/bhyve/bhyve_command.c | 5 +
src/conf/capabilities.c | 5 +-
src/conf/capabilities.h | 1 +
src/conf/cpu_conf.c | 16 +-
src/conf/cpu_conf.h | 1 +
src/conf/domain_conf.c | 1 +
src/conf/schemas/capability.rng | 3 +
src/conf/schemas/cputypes.rng | 5 +
src/cpu/cpu.c | 1 +
src/libvirt_linux.syms | 1 +
src/libxl/libxl_capabilities.c | 1 +
src/qemu/qemu_capabilities.c | 2 +
src/qemu/qemu_capabilities.h | 1 +
src/qemu/qemu_command.c | 7 +
src/qemu/qemu_domain.c | 3 +-
src/qemu/qemu_monitor.c | 2 +
src/qemu/qemu_monitor.h | 2 +
src/qemu/qemu_monitor_json.c | 5 +
src/util/virhostcpu.c | 22 +
src/util/virhostcpu.h | 1 +
src/vmx/vmx.c | 7 +
tests/capabilityschemadata/caps-qemu-kvm.xml | 32 +-
.../x86_64-host+guest,model486-result.xml | 2 +-
.../x86_64-host+guest,models-result.xml | 2 +-
.../cputestdata/x86_64-host+guest-result.xml | 2 +-
tests/cputestdata/x86_64-host+guest.xml | 2 +-
.../x86_64-host+host-model-nofallback.xml | 2 +-
...t-Haswell-noTSX+Haswell,haswell-result.xml | 2 +-
...ell-noTSX+Haswell-noTSX,haswell-result.xml | 2 +-
...ost-Haswell-noTSX+Haswell-noTSX-result.xml | 2 +-
.../x86_64-host-worse+guest-result.xml | 2 +-
.../qemucapabilitiesdata/caps_7.1.0_ppc64.xml | 1 +
.../caps_7.1.0_x86_64.xml | 1 +
tests/qemucapabilitiesdata/caps_7.2.0_ppc.xml | 1 +
.../caps_7.2.0_x86_64+hvf.xml | 1 +
.../caps_7.2.0_x86_64.xml | 1 +
.../caps_8.0.0_riscv64.xml | 1 +
.../caps_8.0.0_x86_64.xml | 1 +
.../qemucapabilitiesdata/caps_8.1.0_s390x.xml | 1 +
.../caps_8.1.0_x86_64.xml | 1 +
.../caps_8.2.0_aarch64.xml | 1 +
.../caps_8.2.0_x86_64.xml | 1 +
.../caps_9.0.0_x86_64.xml | 1 +
.../ppc64-modern-bulk-result-conf.xml | 2 +-
.../ppc64-modern-bulk-result-live.xml | 2 +-
.../ppc64-modern-individual-result-conf.xml | 2 +-
.../ppc64-modern-individual-result-live.xml | 2 +-
.../x86-modern-bulk-result-conf.xml | 2 +-
.../x86-modern-bulk-result-live.xml | 2 +-
.../x86-modern-individual-add-result-conf.xml | 2 +-
.../x86-modern-individual-add-result-live.xml | 2 +-
...imeout+graphics-spice-timeout-password.xml | 2 +-
.../qemuhotplug-graphics-spice-timeout.xml | 2 +-
...torjson-cpuinfo-aarch64-clusters-cpus.json | 88 +
...json-cpuinfo-aarch64-clusters-hotplug.json | 171 ++
...umonitorjson-cpuinfo-aarch64-clusters.data | 108 +
tests/qemumonitorjsontest.c | 9 +-
.../cpu-hotplug-startup.x86_64-latest.args | 2 +-
.../cpu-numa-disjoint.x86_64-latest.args | 2 +-
.../cpu-numa-disordered.x86_64-latest.args | 2 +-
.../cpu-numa-memshared.x86_64-latest.args | 2 +-
...-numa-no-memory-element.x86_64-latest.args | 2 +-
.../cpu-numa1.x86_64-latest.args | 2 +-
.../cpu-numa2.x86_64-latest.args | 2 +-
.../cpu-topology1.x86_64-latest.args | 2 +-
.../cpu-topology2.x86_64-latest.args | 2 +-
.../cpu-topology3.x86_64-latest.args | 2 +-
.../cpu-topology4.x86_64-latest.args | 2 +-
...args => cpu-topology5.aarch64-latest.args} | 12 +-
tests/qemuxml2argvdata/cpu-topology5.xml | 17 +
...memory-no-numa-topology.x86_64-latest.args | 2 +-
.../fd-memory-no-numa-topology.xml | 2 +-
...fd-memory-numa-topology.x86_64-latest.args | 2 +-
.../fd-memory-numa-topology.xml | 2 +-
...d-memory-numa-topology2.x86_64-latest.args | 2 +-
.../fd-memory-numa-topology2.xml | 2 +-
...d-memory-numa-topology3.x86_64-latest.args | 2 +-
.../fd-memory-numa-topology3.xml | 2 +-
.../hugepages-nvdimm.x86_64-latest.args | 2 +-
tests/qemuxml2argvdata/hugepages-nvdimm.xml | 2 +-
...memory-default-hugepage.x86_64-latest.args | 2 +-
.../memfd-memory-default-hugepage.xml | 2 +-
.../memfd-memory-numa.x86_64-latest.args | 2 +-
tests/qemuxml2argvdata/memfd-memory-numa.xml | 2 +-
...emory-hotplug-dimm-addr.x86_64-latest.args | 2 +-
.../memory-hotplug-dimm.x86_64-latest.args | 2 +-
...memory-hotplug-multiple.x86_64-latest.args | 2 +-
...y-hotplug-nvdimm-access.x86_64-latest.args | 2 +-
.../memory-hotplug-nvdimm-access.xml | 2 +-
...ry-hotplug-nvdimm-align.x86_64-latest.args | 2 +-
.../memory-hotplug-nvdimm-align.xml | 2 +-
...ry-hotplug-nvdimm-label.x86_64-latest.args | 2 +-
.../memory-hotplug-nvdimm-label.xml | 2 +-
...ory-hotplug-nvdimm-pmem.x86_64-latest.args | 2 +-
.../memory-hotplug-nvdimm-pmem.xml | 2 +-
...-nvdimm-ppc64-abi-update.ppc64-latest.args | 2 +-
...ory-hotplug-nvdimm-ppc64.ppc64-latest.args | 2 +-
...hotplug-nvdimm-readonly.x86_64-latest.args | 2 +-
.../memory-hotplug-nvdimm-readonly.xml | 2 +-
.../memory-hotplug-nvdimm.x86_64-latest.args | 2 +-
.../memory-hotplug-nvdimm.xml | 2 +-
...mory-hotplug-virtio-mem.x86_64-latest.args | 2 +-
.../memory-hotplug-virtio-mem.xml | 2 +-
...ory-hotplug-virtio-pmem.x86_64-latest.args | 2 +-
.../memory-hotplug-virtio-pmem.xml | 2 +-
.../memory-hotplug.x86_64-latest.args | 2 +-
...auto-memory-vcpu-cpuset.x86_64-latest.args | 2 +-
...no-cpuset-and-placement.x86_64-latest.args | 2 +-
...d-auto-vcpu-no-numatune.x86_64-latest.args | 2 +-
...to-vcpu-static-numatune.x86_64-latest.args | 2 +-
...static-memory-auto-vcpu.x86_64-latest.args | 2 +-
...static-vcpu-no-numatune.x86_64-latest.args | 2 +-
.../qemuxml2argvdata/numad.x86_64-latest.args | 2 +-
...ne-auto-nodeset-invalid.x86_64-latest.args | 2 +-
.../pci-expander-bus.x86_64-latest.args | 2 +-
.../pcie-expander-bus.x86_64-latest.args | 2 +-
.../pseries-phb-numa-node.ppc64-latest.args | 2 +-
tests/qemuxml2argvtest.c | 1 +
.../cpu-numa-disjoint.x86_64-latest.xml | 2 +-
.../cpu-numa-disordered.x86_64-latest.xml | 2 +-
.../cpu-numa-memshared.x86_64-latest.xml | 2 +-
...u-numa-no-memory-element.x86_64-latest.xml | 2 +-
.../cpu-numa1.x86_64-latest.xml | 2 +-
.../cpu-numa2.x86_64-latest.xml | 2 +-
...memory-hotplug-dimm-addr.x86_64-latest.xml | 2 +-
.../memory-hotplug-dimm.x86_64-latest.xml | 2 +-
.../memory-hotplug-multiple.x86_64-latest.xml | 2 +-
...g-nvdimm-ppc64-abi-update.ppc64-latest.xml | 2 +-
...mory-hotplug-nvdimm-ppc64.ppc64-latest.xml | 2 +-
.../memory-hotplug.x86_64-latest.xml | 2 +-
...-auto-memory-vcpu-cpuset.x86_64-latest.xml | 2 +-
...-no-cpuset-and-placement.x86_64-latest.xml | 2 +-
...ad-auto-vcpu-no-numatune.x86_64-latest.xml | 2 +-
...-static-vcpu-no-numatune.x86_64-latest.xml | 2 +-
.../pci-expander-bus.x86_64-latest.xml | 2 +-
.../pcie-expander-bus.x86_64-latest.xml | 2 +-
.../pseries-phb-numa-node.ppc64-latest.xml | 2 +-
.../linux-basic-clusters/system/cpu | 1 +
.../linux-basic-clusters/system/node | 1 +
.../vircaps-aarch64-basic-clusters.xml | 255 +++
.../vircaps2xmldata/vircaps-aarch64-basic.xml | 32 +-
.../vircaps-x86_64-basic-dies.xml | 24 +-
.../vircaps2xmldata/vircaps-x86_64-basic.xml | 32 +-
.../vircaps2xmldata/vircaps-x86_64-caches.xml | 16 +-
tests/vircaps2xmldata/vircaps-x86_64-hmat.xml | 48 +-
.../vircaps-x86_64-resctrl-cdp.xml | 24 +-
.../vircaps-x86_64-resctrl-cmt.xml | 24 +-
.../vircaps-x86_64-resctrl-fake-feature.xml | 24 +-
.../vircaps-x86_64-resctrl-skx-twocaches.xml | 2 +-
.../vircaps-x86_64-resctrl-skx.xml | 2 +-
.../vircaps-x86_64-resctrl.xml | 24 +-
tests/vircaps2xmltest.c | 1 +
.../linux-aarch64-with-clusters.cpuinfo | 2016 +++++++++++++++++
.../linux-aarch64-with-clusters.expected | 1 +
.../cpu/cpu0/topology/cluster_cpus | 1 +
.../cpu/cpu0/topology/cluster_cpus_list | 1 +
.../cpu/cpu0/topology/cluster_id | 1 +
.../cpu/cpu0/topology/core_cpus | 1 +
.../cpu/cpu0/topology/core_cpus_list | 1 +
.../cpu/cpu0/topology/core_id | 1 +
.../cpu/cpu0/topology/core_siblings | 1 +
.../cpu/cpu0/topology/core_siblings_list | 1 +
.../cpu/cpu0/topology/package_cpus | 1 +
.../cpu/cpu0/topology/package_cpus_list | 1 +
.../cpu/cpu0/topology/physical_package_id | 1 +
.../cpu/cpu0/topology/thread_siblings | 1 +
.../cpu/cpu0/topology/thread_siblings_list | 1 +
[...]
tests/virhostcputest.c | 1 +
tests/vmx2xmldata/esx-in-the-wild-10.xml | 2 +-
tests/vmx2xmldata/esx-in-the-wild-8.xml | 2 +-
tests/vmx2xmldata/esx-in-the-wild-9.xml | 2 +-
3303 files changed, 6180 insertions(+), 262 deletions(-)
create mode 100644
tests/qemumonitorjsondata/qemumonitorjson-cpuinfo-aarch64-clusters-cpus.json
create mode 100644
tests/qemumonitorjsondata/qemumonitorjson-cpuinfo-aarch64-clusters-hotplug.json
create mode 100644
tests/qemumonitorjsondata/qemumonitorjson-cpuinfo-aarch64-clusters.data
copy tests/qemuxml2argvdata/{cpu-topology2.x86_64-latest.args =>
cpu-topology5.aarch64-latest.args} (69%)
create mode 100644 tests/qemuxml2argvdata/cpu-topology5.xml
create mode 120000 tests/vircaps2xmldata/linux-basic-clusters/system/cpu
create mode 120000 tests/vircaps2xmldata/linux-basic-clusters/system/node
create mode 100644 tests/vircaps2xmldata/vircaps-aarch64-basic-clusters.xml
create mode 100644 tests/virhostcpudata/linux-aarch64-with-clusters.cpuinfo
create mode 100644 tests/virhostcpudata/linux-aarch64-with-clusters.expected
create mode 100644
tests/virhostcpudata/linux-with-clusters/cpu/cpu0/topology/cluster_cpus
create mode 100644
tests/virhostcpudata/linux-with-clusters/cpu/cpu0/topology/cluster_cpus_list
create mode 100644 tests/virhostcpudata/linux-with-clusters/cpu/cpu0/topology/cluster_id
create mode 100644 tests/virhostcpudata/linux-with-clusters/cpu/cpu0/topology/core_cpus
create mode 100644
tests/virhostcpudata/linux-with-clusters/cpu/cpu0/topology/core_cpus_list
create mode 100644 tests/virhostcpudata/linux-with-clusters/cpu/cpu0/topology/core_id
create mode 100644
tests/virhostcpudata/linux-with-clusters/cpu/cpu0/topology/core_siblings
create mode 100644
tests/virhostcpudata/linux-with-clusters/cpu/cpu0/topology/core_siblings_list
create mode 100644
tests/virhostcpudata/linux-with-clusters/cpu/cpu0/topology/package_cpus
create mode 100644
tests/virhostcpudata/linux-with-clusters/cpu/cpu0/topology/package_cpus_list
create mode 100644
tests/virhostcpudata/linux-with-clusters/cpu/cpu0/topology/physical_package_id
create mode 100644
tests/virhostcpudata/linux-with-clusters/cpu/cpu0/topology/thread_siblings
create mode 100644
tests/virhostcpudata/linux-with-clusters/cpu/cpu0/topology/thread_siblings_list
[...]
--
2.43.0