> From: Lu Baolu <[email protected]> > Sent: Wednesday, June 22, 2022 12:41 PM > > The IOMMU driver shares the pasid table for PCI alias devices. When the > RID2PASID entry of the shared pasid table has been filled by the first > device, the subsequent devices will encounter the "DMAR: Setup RID2PASID > failed" failure as the pasid entry has already been marked as present. As > the result, the IOMMU probing process will be aborted. > > This fixes it by skipping RID2PASID setting if the pasid entry has been > populated. This works because the IOMMU core ensures that only the same > IOMMU domain can be attached to all PCI alias devices at the same time. > Therefore the subsequent devices just try to setup the RID2PASID entry > with the same domain, which is negligible. This also adds domain validity > checks for more confidence anyway. > > Fixes: ef848b7e5a6a0 ("iommu/vt-d: Setup pasid entry for RID2PASID > support") > Reported-by: Chenyi Qiang <[email protected]> > Cc: [email protected] > Signed-off-by: Lu Baolu <[email protected]>
Reviewed-by: Kevin Tian <[email protected]> _______________________________________________ iommu mailing list [email protected] https://lists.linuxfoundation.org/mailman/listinfo/iommu
