mirror of
https://github.com/torvalds/linux.git
synced 2026-06-03 03:53:37 +02:00
dmaengine: idxd: Remove unnecessary IOMMU_DEV_FEAT_IOPF
The IOMMU_DEV_FEAT_IOPF implementation in the iommu driver is just a no-op. It will also be removed from the iommu driver in the subsequent patch. Remove it to avoid dead code. Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com> Acked-by: Vinod Koul <vkoul@kernel.org> Reviewed-by: Dave Jiang <dave.jiang@intel.com> Reviewed-by: Fenghua Yu <fenghuay@nvidia.com> Reviewed-by: Jason Gunthorpe <jgg@nvidia.com> Reviewed-by: Kevin Tian <kevin.tian@intel.com> Reviewed-by: Yi Liu <yi.l.liu@intel.com> Tested-by: Zhangfei Gao <zhangfei.gao@linaro.org> Link: https://lore.kernel.org/r/20250418080130.1844424-6-baolu.lu@linux.intel.com Signed-off-by: Joerg Roedel <jroedel@suse.de>
This commit is contained in:
parent
c2fa4d4cce
commit
853b01b5ef
|
|
@ -626,21 +626,6 @@ static void idxd_disable_system_pasid(struct idxd_device *idxd)
|
|||
idxd->pasid = IOMMU_PASID_INVALID;
|
||||
}
|
||||
|
||||
static int idxd_enable_sva(struct pci_dev *pdev)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = iommu_dev_enable_feature(&pdev->dev, IOMMU_DEV_FEAT_IOPF);
|
||||
if (ret)
|
||||
return ret;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void idxd_disable_sva(struct pci_dev *pdev)
|
||||
{
|
||||
iommu_dev_disable_feature(&pdev->dev, IOMMU_DEV_FEAT_IOPF);
|
||||
}
|
||||
|
||||
static int idxd_probe(struct idxd_device *idxd)
|
||||
{
|
||||
struct pci_dev *pdev = idxd->pdev;
|
||||
|
|
@ -655,17 +640,13 @@ static int idxd_probe(struct idxd_device *idxd)
|
|||
dev_dbg(dev, "IDXD reset complete\n");
|
||||
|
||||
if (IS_ENABLED(CONFIG_INTEL_IDXD_SVM) && sva) {
|
||||
if (idxd_enable_sva(pdev)) {
|
||||
dev_warn(dev, "Unable to turn on user SVA feature.\n");
|
||||
} else {
|
||||
set_bit(IDXD_FLAG_USER_PASID_ENABLED, &idxd->flags);
|
||||
set_bit(IDXD_FLAG_USER_PASID_ENABLED, &idxd->flags);
|
||||
|
||||
rc = idxd_enable_system_pasid(idxd);
|
||||
if (rc)
|
||||
dev_warn(dev, "No in-kernel DMA with PASID. %d\n", rc);
|
||||
else
|
||||
set_bit(IDXD_FLAG_PASID_ENABLED, &idxd->flags);
|
||||
}
|
||||
rc = idxd_enable_system_pasid(idxd);
|
||||
if (rc)
|
||||
dev_warn(dev, "No in-kernel DMA with PASID. %d\n", rc);
|
||||
else
|
||||
set_bit(IDXD_FLAG_PASID_ENABLED, &idxd->flags);
|
||||
} else if (!sva) {
|
||||
dev_warn(dev, "User forced SVA off via module param.\n");
|
||||
}
|
||||
|
|
@ -703,8 +684,6 @@ static int idxd_probe(struct idxd_device *idxd)
|
|||
err:
|
||||
if (device_pasid_enabled(idxd))
|
||||
idxd_disable_system_pasid(idxd);
|
||||
if (device_user_pasid_enabled(idxd))
|
||||
idxd_disable_sva(pdev);
|
||||
return rc;
|
||||
}
|
||||
|
||||
|
|
@ -715,8 +694,6 @@ static void idxd_cleanup(struct idxd_device *idxd)
|
|||
idxd_cleanup_internals(idxd);
|
||||
if (device_pasid_enabled(idxd))
|
||||
idxd_disable_system_pasid(idxd);
|
||||
if (device_user_pasid_enabled(idxd))
|
||||
idxd_disable_sva(idxd->pdev);
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
@ -1247,8 +1224,6 @@ static void idxd_remove(struct pci_dev *pdev)
|
|||
free_irq(irq_entry->vector, irq_entry);
|
||||
pci_free_irq_vectors(pdev);
|
||||
pci_iounmap(pdev, idxd->reg_base);
|
||||
if (device_user_pasid_enabled(idxd))
|
||||
idxd_disable_sva(pdev);
|
||||
pci_disable_device(pdev);
|
||||
destroy_workqueue(idxd->wq);
|
||||
perfmon_pmu_remove(idxd);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user