Hi Daniel,
Top level libvirt device representation in XML is based on the
device
*class*, not the specific device impl. Adding a <nestedSmmuv3> device
type XML element in libvirt is totally inappropriate. Any configuration
must be done beneath the <iommu> element.
> 1. Adding a <nestedSmmuv3> attribute for PXB controller.
> 2. Having a single virDomainIOMMUDef struct for virDomainDef. Adding
> variable-length array members to virDomainIOMMUDef for multiple SMMU
> node names and bus numbers.
> 3. Having a single virDomainIOMMUDef struct for virDomainDef. Adding a
> variable-length array member to virDomainIOMMUDef for SMMU node names.
> Changing the single virDomainDeviceInfo struct to a variable-length
> array of virDomainDeviceInfo structs for multiple nested SMMU bus numbers.
> 4. Supporting multiple virDomainIOMMUDef structs for virDomainDef.
Following up here - would you have a recommendation on which
implementation to proceed with? I will proceed with adding a
<nestedSmmuv3> attribute for PXB controller and removing the
<nestedSmmuv3> device stanzas for the next RFC, if there is no
preference for one method over the other.
Thanks,
Nathan