The first patch adds replies files and as such has been
aggressively snipped to deal with mailing list message size limits.
Grab the unabriged version with
$ git fetch
https://gitlab.com/abologna/libvirt.git virtio-iommu
The QEMU side of the feature has now been merged, so this can finally
go in as well.
I have retained the R-bs for most patches, but there are a few that
have been changed enough to warrant another look before I push them.
Changes from [v1]:
* rebase on top of master;
* generate -device argument as JSON.
[v1]
https://listman.redhat.com/archives/libvir-list/2021-October/223977.html
Andrea Bolognani (17):
tests: Add capabilities for QEMU 7.0.0 on aarch64
conf: Introduce VIR_PCI_CONNECT_INTEGRATED
qemu: Tweak some code
qemu: Introduce QEMU_CAPS_DEVICE_VIRTIO_IOMMU_PCI
qemu: Introduce QEMU_CAPS_VIRTIO_IOMMU_BOOT_BYPASS
conf: Introduce virtio model for <iommu>
tests: Add test cases for virtio-iommu
qemu: Validate machine type used with virtio-iommu
qemu: Validate capabilities for virtio-iommu
qemu: Validate use of ACPI with virtio-iommu
conf: Add virDomainDeviceInfo to virDomainIOMMUDef
qemu: Assign PCI address to virtio-iommu
qemu: Validate address type for virtio-iommu
tests: Add test for virtio-iommu address
qemu: Generate command line for virtio-iommu
docs: Document virtio-iommu
news: Document virtio-iommu
NEWS.rst | 4 +
docs/formatdomain.rst | 5 +-
docs/schemas/domaincommon.rng | 64 +-
src/conf/domain_addr.c | 17 +
src/conf/domain_addr.h | 26 +-
src/conf/domain_conf.c | 38 +-
src/conf/domain_conf.h | 2 +
src/qemu/qemu_capabilities.c | 10 +
src/qemu/qemu_capabilities.h | 2 +
src/qemu/qemu_command.c | 30 +-
src/qemu/qemu_domain_address.c | 33 +-
src/qemu/qemu_validate.c | 32 +
.../qemu_7.0.0-virt.aarch64.xml | 193 +
tests/domaincapsdata/qemu_7.0.0.aarch64.xml | 187 +
.../caps_5.0.0.aarch64.replies | 71 +-
.../caps_5.0.0.aarch64.xml | 1 +
.../caps_5.0.0.ppc64.replies | 59 +-
.../qemucapabilitiesdata/caps_5.0.0.ppc64.xml | 1 +
.../caps_5.0.0.riscv64.replies | 55 +-
.../caps_5.0.0.riscv64.xml | 1 +
.../caps_5.0.0.x86_64.replies | 71 +-
.../caps_5.0.0.x86_64.xml | 1 +
.../caps_5.1.0.x86_64.replies | 71 +-
.../caps_5.1.0.x86_64.xml | 1 +
.../caps_5.2.0.aarch64.replies | 71 +-
.../caps_5.2.0.aarch64.xml | 1 +
.../caps_5.2.0.ppc64.replies | 59 +-
.../qemucapabilitiesdata/caps_5.2.0.ppc64.xml | 1 +
.../caps_5.2.0.riscv64.replies | 55 +-
.../caps_5.2.0.riscv64.xml | 1 +
.../caps_5.2.0.s390x.replies | 59 +-
.../qemucapabilitiesdata/caps_5.2.0.s390x.xml | 1 +
.../caps_5.2.0.x86_64.replies | 71 +-
.../caps_5.2.0.x86_64.xml | 1 +
.../caps_6.0.0.aarch64.replies | 71 +-
.../caps_6.0.0.aarch64.xml | 1 +
.../caps_6.0.0.s390x.replies | 59 +-
.../qemucapabilitiesdata/caps_6.0.0.s390x.xml | 1 +
.../caps_6.0.0.x86_64.replies | 71 +-
.../caps_6.0.0.x86_64.xml | 1 +
.../caps_6.1.0.x86_64.replies | 71 +-
.../caps_6.1.0.x86_64.xml | 1 +
.../caps_6.2.0.aarch64.replies | 71 +-
.../caps_6.2.0.aarch64.xml | 1 +
.../caps_6.2.0.ppc64.replies | 59 +-
.../qemucapabilitiesdata/caps_6.2.0.ppc64.xml | 1 +
.../caps_6.2.0.x86_64.replies | 71 +-
.../caps_6.2.0.x86_64.xml | 1 +
...h64.replies => caps_7.0.0.aarch64.replies} | 8112 ++++++++++++-----
...2.0.aarch64.xml => caps_7.0.0.aarch64.xml} | 34 +-
.../caps_7.0.0.ppc64.replies | 59 +-
.../qemucapabilitiesdata/caps_7.0.0.ppc64.xml | 1 +
.../caps_7.0.0.x86_64.replies | 275 +-
.../caps_7.0.0.x86_64.xml | 2 +
...fault-cpu-kvm-virt-4.2.aarch64-latest.args | 6 +-
...fault-cpu-tcg-virt-4.2.aarch64-latest.args | 6 +-
.../aarch64-tpm.aarch64-latest.args | 2 +-
.../aarch64-virt-graphics.aarch64-latest.args | 36 +-
.../aarch64-virt-headless.aarch64-latest.args | 28 +-
...ult-video-type-aarch64.aarch64-latest.args | 6 +-
.../disk-arm-virtio-sd.aarch64-latest.args | 2 +-
...e-expander-bus-aarch64.aarch64-latest.args | 2 +-
... virtio-iommu-aarch64.aarch64-latest.args} | 17 +-
.../qemuxml2argvdata/virtio-iommu-aarch64.xml | 20 +
...mmu-invalid-address-type.x86_64-latest.err | 1 +
.../virtio-iommu-invalid-address-type.xml | 20 +
...io-iommu-invalid-address.x86_64-latest.err | 1 +
.../virtio-iommu-invalid-address.xml | 20 +
.../virtio-iommu-no-acpi.x86_64-latest.err | 1 +
.../qemuxml2argvdata/virtio-iommu-no-acpi.xml | 15 +
...rtio-iommu-wrong-machine.x86_64-latest.err | 1 +
.../virtio-iommu-wrong-machine.xml | 18 +
.../virtio-iommu-x86_64.x86_64-6.1.0.err | 1 +
.../virtio-iommu-x86_64.x86_64-latest.args | 32 +
.../qemuxml2argvdata/virtio-iommu-x86_64.xml | 18 +
tests/qemuxml2argvtest.c | 7 +
.../virtio-iommu-aarch64.aarch64-latest.xml | 34 +
.../virtio-iommu-x86_64.x86_64-latest.xml | 36 +
tests/qemuxml2xmltest.c | 2 +
79 files changed, 7862 insertions(+), 2728 deletions(-)
create mode 100644 tests/domaincapsdata/qemu_7.0.0-virt.aarch64.xml
create mode 100644 tests/domaincapsdata/qemu_7.0.0.aarch64.xml
copy tests/qemucapabilitiesdata/{caps_6.2.0.aarch64.replies =>
caps_7.0.0.aarch64.replies} (87%)
copy tests/qemucapabilitiesdata/{caps_6.2.0.aarch64.xml => caps_7.0.0.aarch64.xml}
(96%)
copy tests/qemuxml2argvdata/{aarch64-default-cpu-tcg-virt-4.2.aarch64-latest.args =>
virtio-iommu-aarch64.aarch64-latest.args} (55%)
create mode 100644 tests/qemuxml2argvdata/virtio-iommu-aarch64.xml
create mode 100644
tests/qemuxml2argvdata/virtio-iommu-invalid-address-type.x86_64-latest.err
create mode 100644 tests/qemuxml2argvdata/virtio-iommu-invalid-address-type.xml
create mode 100644
tests/qemuxml2argvdata/virtio-iommu-invalid-address.x86_64-latest.err
create mode 100644 tests/qemuxml2argvdata/virtio-iommu-invalid-address.xml
create mode 100644 tests/qemuxml2argvdata/virtio-iommu-no-acpi.x86_64-latest.err
create mode 100644 tests/qemuxml2argvdata/virtio-iommu-no-acpi.xml
create mode 100644 tests/qemuxml2argvdata/virtio-iommu-wrong-machine.x86_64-latest.err
create mode 100644 tests/qemuxml2argvdata/virtio-iommu-wrong-machine.xml
create mode 100644 tests/qemuxml2argvdata/virtio-iommu-x86_64.x86_64-6.1.0.err
create mode 100644 tests/qemuxml2argvdata/virtio-iommu-x86_64.x86_64-latest.args
create mode 100644 tests/qemuxml2argvdata/virtio-iommu-x86_64.xml
create mode 100644 tests/qemuxml2xmloutdata/virtio-iommu-aarch64.aarch64-latest.xml
create mode 100644 tests/qemuxml2xmloutdata/virtio-iommu-x86_64.x86_64-latest.xml
--
2.35.1