On 05/03/2018 10:11, Liu, Yi L wrote:
>> Do you really need VTDDeviceNode?  I think can you simply put the
>> QLIST_ENTRY in VTDAddressSpace (named e.g. next_by_pasid), since
>> VTDAddressSpace already includes a (bus, devfn).
> Existing VTDAddressSpace is actaully per-device. While for PASID tagged
> address space, it is possible to have multiple devices tied to a single
> PASID tagged address space.

Yes, that's the purpose of VTDPASIDAddressSpace.

> Reuse VTDAddressSpace could be a choice since
> it is a per-device structure, but it may be missleading since there is
> other fileds in VTDAddressSpace. This is why I proposed to have VTDDeviceNode.

I think it's okay to put all per-device setup in VTDAddressSpace.  Later
if it makes sense VTDAddressSpace could become a union, according to
whether the IOMMU is configured for PASID or requester ID operation, and
could be renamed to VTDDeviceInfo.  But for now it's not needed.


> But consolidation is possible here.

Reply via email to