Messages in this thread | | | From | "Tian, Kevin" <> | Subject | RE: [PATCH v3 1/1] iommu/vt-d: Fix RID2PASID setup/teardown failure | Date | Fri, 24 Jun 2022 06:31:45 +0000 |
| |
> From: Lu Baolu <baolu.lu@linux.intel.com> > Sent: Thursday, June 23, 2022 2:57 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 device 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. > > On the contrary, when any alias device is hot-removed from the system, > for example, by writing to /sys/bus/pci/devices/.../remove, the shared > RID2PASID will be cleared without any notifications to other devices. > As the result, any DMAs from those rest devices are blocked. > > Sharing pasid table among PCI alias devices could save two memory pages > for devices underneath the PCIe-to-PCI bridges. Anyway, considering that > those devices are rare on modern platforms that support VT-d in scalable > mode and the saved memory is negligible, it's reasonable to remove this > part of immature code to make the driver feasible and stable. > > Fixes: ef848b7e5a6a0 ("iommu/vt-d: Setup pasid entry for RID2PASID > support") > Reported-by: Chenyi Qiang <chenyi.qiang@intel.com> > Reported-by: Ethan Zhao <haifeng.zhao@linux.intel.com> > Cc: stable@vger.kernel.org > Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Looks good.
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
| |