On 2022/6/1 17:18, Tian, Kevin wrote:
From: Lu Baolu <baolu...@linux.intel.com>
Sent: Friday, May 27, 2022 2:30 PM

The iommu->lock is used to protect the per-IOMMU pasid directory table
and pasid table. Move the spinlock acquisition/release into the helpers
to make the code self-contained.

Signed-off-by: Lu Baolu <baolu...@linux.intel.com>

Reviewed-by: Kevin Tian <kevin.t...@intel.com>, with one nit


-       /* Caller must ensure PASID entry is not in use. */
-       if (pasid_pte_is_present(pte))
-               return -EBUSY;
+       spin_lock(&iommu->lock);
+       pte = get_non_present_pasid_entry(dev, pasid);
+       if (!pte) {
+               spin_unlock(&iommu->lock);
+               return -ENODEV;
+       }

I don't think above is a good abstraction and it changes the error
code for an present entry from -EBUSY to -ENODEV.

Sure. I will roll it back to -EBUSY. I added this helper because the
same code appears at least three times in this file.

Best regards,
baolu


_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to