On Fri, Apr 11, 2025 at 08:40:54AM -0700, Matthew R. Ochs via Devel wrote:
> Resending: Series has been re-based over latest upstream.
> 
> This patch series adds support for configuring the PCI high memory MMIO
> window size for aarch64 virt machine types. This feature has been 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>

As a schema design comment. IIUC, the MMIO size we're configuring
is conceptually a characteristic associated with the PCI(e) host
and the memory layout it defines for PCI(e) devices to use.

Checking through our schema I find we already have support
for

    <controller type='pci' index='0' model='pci-root'>
      <pcihole64 unit='KiB'>1048576</pcihole64>
    </controller>

this makes me think that we should model this new attribute
in a similar way, eg so we can support:

    <controller type='pci' index='0' model='pci-root'>
      <pcihole64 unit='KiB'>1048576</pcihole64>
      <pcimmio64 unit='TiB'>2</pcimmio64>
    </controller>

(pci-root or pcie-root are interchangable).

This 'pcimmio64' value can then be mapped to whatever hypervisor
or architecture specific setting is appropriate, avoiding exposing
the QEMU arm 'highmem-mmio-size' naming convention.


With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|

Reply via email to