Re: [RFC 3/8] iommufd: Support attach/replace hwpt per pasid

From: Baolu Lu
Date: Wed Sep 27 2023 - 00:34:53 EST


On 9/26/23 5:26 PM, Yi Liu wrote:
From: Kevin Tian<kevin.tian@xxxxxxxxx>

This introduces three APIs for device drivers to manage pasid attach/
replace/detach.

int iommufd_device_pasid_attach(struct iommufd_device *idev,
u32 pasid, u32 *pt_id);
int iommufd_device_pasid_replace(struct iommufd_device *idev,
u32 pasid, u32 *pt_id);
void iommufd_device_pasid_detach(struct iommufd_device *idev,
u32 pasid);

I am a bit puzzled. Do we really need both attach and replace interfaces
to install a hwpt onto a pasid on device? The IOMMUFD already tracks the
connections between hwpt and {device, pasid}, so it could easily call
the right iommu interfaces (attach vs. replace). Perhaps I overlooked
previous discussion on this.

Best regards,
baolu