> From: Jean-Philippe Brucker <jean-phili...@linaro.org> > Sent: Tuesday, June 28, 2022 5:44 PM > > On Tue, Jun 28, 2022 at 08:39:36AM +0000, Tian, Kevin wrote: > > > From: Lu Baolu <baolu...@linux.intel.com> > > > Sent: Tuesday, June 21, 2022 10:44 PM > > > > > > Tweak the I/O page fault handling framework to route the page faults to > > > the domain and call the page fault handler retrieved from the domain. > > > This makes the I/O page fault handling framework possible to serve more > > > usage scenarios as long as they have an IOMMU domain and install a > page > > > fault handler in it. Some unused functions are also removed to avoid > > > dead code. > > > > > > The iommu_get_domain_for_dev_pasid() which retrieves attached > domain > > > for a {device, PASID} pair is used. It will be used by the page fault > > > handling framework which knows {device, PASID} reported from the > iommu > > > driver. We have a guarantee that the SVA domain doesn't go away during > > > IOPF handling, because unbind() waits for pending faults with > > > iopf_queue_flush_dev() before freeing the domain. Hence, there's no > need > > > to synchronize life cycle of the iommu domains between the unbind() and > > > the interrupt threads. > > > > I found iopf_queue_flush_dev() is only called in intel-iommu driver. Did > > I overlook anything? > > The SMMU driver will need it as well when we upstream PRI support. > Currently it only supports stall, and that requires the device driver to > flush all DMA including stalled transactions *before* calling unbind(), so > ne need for iopf_queue_flush_dev() in this case. >
then it makes sense. Probably Baolu can add this information in the commit msg so others with similar question can quickly get the point here. _______________________________________________ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu