Hi Joerg, On Thu, Jan 28, 2021 at 01:51:12PM +0100, Joerg Roedel wrote: > On Wed, Jan 27, 2021 at 03:00:32PM -0500, Chuck Lever wrote: > > From: Yong Wu <[email protected]> > > > > iotlb_sync_map allow IOMMU drivers tlb sync after completing the whole > > mapping. This patch adds iova and size as the parameters in it. then the > > IOMMU driver could flush tlb with the whole range once after iova mapping > > to improve performance. > > > > Signed-off-by: Yong Wu <[email protected]> > > Reviewed-by: Robin Murphy <[email protected]> > > Signed-off-by: Chuck Lever <[email protected]> > > --- > > drivers/iommu/iommu.c | 4 ++-- > > drivers/iommu/tegra-gart.c | 7 +++++-- > > include/linux/iommu.h | 3 ++- > > 3 files changed, 9 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c > > index c304a6a30d42..3d099a31ddca 100644 > > --- a/drivers/iommu/iommu.c > > +++ b/drivers/iommu/iommu.c > > @@ -2443,7 +2443,7 @@ static int _iommu_map(struct iommu_domain *domain, > > unsigned long iova, > > > > ret = __iommu_map(domain, iova, paddr, size, prot, GFP_KERNEL); > > if (ret == 0 && ops->iotlb_sync_map) > > - ops->iotlb_sync_map(domain); > > + ops->iotlb_sync_map(domain, iova, size); > > How about using 'struct iommu_iotlb_gather' instead of directly passing > the iova/size parameters here? The iotlb_sync() call-back uses it > already.
Heads-up, but I already queued this patch as part of its original series: https://lore.kernel.org/r/[email protected] since it's part of the Mediatek series for 5.12. Would you like me to drop that, or can we stick with passing iova and size for now, with a view to refactoring it later on? Will _______________________________________________ iommu mailing list [email protected] https://lists.linuxfoundation.org/mailman/listinfo/iommu
