[PATCH RESEND 0/6] Add support for configuring PCI high memory MMIO size

Matthew R. Ochs via Devel posted 6 patches 4 days, 7 hours ago
src/conf/domain_conf.c                        | 103 ++++++++++++++++++
src/conf/domain_conf.h                        |   6 +
src/conf/schemas/domaincommon.rng             |   9 ++
src/qemu/qemu_capabilities.c                  |   2 +
src/qemu/qemu_capabilities.h                  |   1 +
src/qemu/qemu_command.c                       |   6 +
src/qemu/qemu_validate.c                      |  15 +++
.../caps_10.0.0_aarch64.replies               |  10 ++
.../caps_10.0.0_aarch64.xml                   |   1 +
...rch64-virt-machine-pci.aarch64-latest.args |  31 ++++++
...arch64-virt-machine-pci.aarch64-latest.xml |  30 +++++
.../aarch64-virt-machine-pci.xml              |  20 ++++
tests/qemuxmlconftest.c                       |   2 +
13 files changed, 236 insertions(+)
create mode 100644 tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-latest.args
create mode 100644 tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-latest.xml
create mode 100644 tests/qemuxmlconfdata/aarch64-virt-machine-pci.xml
[PATCH RESEND 0/6] Add support for configuring PCI high memory MMIO size
Posted by Matthew R. Ochs via Devel 4 days, 7 hours ago
Resending this series since it appears my first attempt was not sent to
the list due to the "first post" manual moderation delay. =)

This patch series adds support for configuring the PCI high memory MMIO
window size for aarch64 virt machine types. This feature was recently merged
into the QEMU upstream master branch [1] and will be available in QEMU 10.0.
It allows users to configure the size of the high memory MMIO window above
4GB, which is particularly useful for systems with large amounts of PCI
memory requirements.
    
The feature is exposed through the domain XML as a new PCI feature:
<features>
  <pci>
    <highmem-mmio-size unit='G'>512</highmem-mmio-size>
  </pci>
</features>
    
When enabled, this configures the size of the PCI high memory MMIO window
via QEMU's highmem-mmio-size machine property. The feature is only
available for aarch64 virt machine types and requires QEMU support.

This series depends on [2] and should be applied on top of those patches.

For your convenience, this series is also available on Github [3].
    
[1] https://github.com/qemu/qemu/commit/f10104aeae3a17f181d5bb37b7fd7dad7fe86cba
[2] https://lists.libvirt.org/archives/list/devel@lists.libvirt.org/thread/Z4NQ3CVQYLNGZRBC35CUHOQ2EXJROPYG/
[3] git fetch https://github.com/nvmochs/libvirt.git pci_highmem_mmio_size

Signed-off-by: Matthew R. Ochs <mochs@nvidia.com>

Matthew R. Ochs (6):
  domain: Add PCI configuration feature infrastructure
  schema: Add PCI configuration feature schema
  conf: Add PCI configuration XML parsing and formatting
  qemu: Add capability for PCI high memory MMIO size
  qemu: Add command line support for PCI high memory MMIO size
  tests: Add tests for machine PCI features

 src/conf/domain_conf.c                        | 103 ++++++++++++++++++
 src/conf/domain_conf.h                        |   6 +
 src/conf/schemas/domaincommon.rng             |   9 ++
 src/qemu/qemu_capabilities.c                  |   2 +
 src/qemu/qemu_capabilities.h                  |   1 +
 src/qemu/qemu_command.c                       |   6 +
 src/qemu/qemu_validate.c                      |  15 +++
 .../caps_10.0.0_aarch64.replies               |  10 ++
 .../caps_10.0.0_aarch64.xml                   |   1 +
 ...rch64-virt-machine-pci.aarch64-latest.args |  31 ++++++
 ...arch64-virt-machine-pci.aarch64-latest.xml |  30 +++++
 .../aarch64-virt-machine-pci.xml              |  20 ++++
 tests/qemuxmlconftest.c                       |   2 +
 13 files changed, 236 insertions(+)
 create mode 100644 tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-latest.args
 create mode 100644 tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-latest.xml
 create mode 100644 tests/qemuxmlconfdata/aarch64-virt-machine-pci.xml

-- 
2.46.0