> From: Paolo Bonzini [mailto:pbonz...@redhat.com] > Sent: Tuesday, March 6, 2018 6:27 PM > Subject: Re: [Qemu-devel] [PATCH v3 11/12] intel_iommu: add framework for > PASID > AddressSpace management > > 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.
Agreed. Let me apply the idea in next version. Thanks, Yi Liu