Messages in this thread | | | From | "Tian, Kevin" <> | Subject | RE: [PATCH RFC v2 02/11] iommu: Add iommu_group_singleton_lockdown() | Date | Wed, 30 Mar 2022 14:18:47 +0000 |
| |
+Alex
> From: Tian, Kevin > Sent: Wednesday, March 30, 2022 10:13 PM > > > From: Jason Gunthorpe > > Sent: Wednesday, March 30, 2022 7:58 PM > > > > On Wed, Mar 30, 2022 at 06:50:11AM +0000, Tian, Kevin wrote: > > > > > One thing that I'm not very sure is about DMA alias. Even when physically > > > there is only a single device within the group the aliasing could lead > > > to multiple RIDs in the group making it non-singleton. But probably we > > > don't need support SVA on such device until a real demand comes? > > > > How can we have multiple RIDs in the same group and have only one > > device in the group? > > Alex may help throw some insight here. Per what I read from the code > looks like certain device can generate traffic with multiple RIDs. > > > > > > > ie if we have a singleton group that doesn't have ACS and someone > > > > hotplugs in another device on a bridge, then our SVA is completely > > > > broken and we get data corruption. > > > > > > Can we capture that in iommu_probe_device() when identifying > > > the group which the probed device will be added to has already been > > > locked down for SVA? i.e. make iommu_group_singleton_lockdown() > > > in this patch to lock down the fact of singleton group instead of > > > the fact of singleton driver... > > > > No, that is backwards > > > > > > Testing the group size is inherently the wrong test to make. > > > > > > What is your suggestion then? > > > > Add a flag to the group that positively indicates the group can never > > have more than one member, even after hot plug. eg because it is > > impossible due to ACS, or lack of bridges, and so on. > > > > OK, I see your point. It essentially refers to a singleton group which > is immutable to hotplug. > > Thanks > Kevin
| |