Re: [PATCH 4/5] iommu: Support mm PASID 1:n with sva domains

From: Tina Zhang
Date: Wed Aug 09 2023 - 22:15:12 EST




On 8/8/23 23:19, Jason Gunthorpe wrote:
On Tue, Aug 08, 2023 at 12:12:42PM -0300, Jason Gunthorpe wrote:

Lets please rework this function into two parts

The first should be 'iommu_sva_alloc_domain()'

It should do the list searching and user management. The usual
'iommu_domain_free()' should be modified to clean it up.
I suppose we can't quite do this fully since the domain allocation
needs to use set_dev_pasid to detect compatability :( This is a
similar problem we had with iommufd too.

Still, the 'alloc and set_dev_pasid' should be in one function and it
should be undone with iommu_detach_device_pasid() and
iommu_domain_free().

The helper bind/unbind functions should wrapper that sequence.
Make sense. I'll refine the error handling paths in bind/unbind functions in the next version.

Thanks,
-Tina

Jason