aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/iommu
diff options
context:
space:
mode:
authorJon Derrick <jonathan.derrick@intel.com>2020-01-21 06:37:49 -0700
committerBjorn Helgaas <bhelgaas@google.com>2020-01-24 14:58:45 -0600
commite3560ee4cfb29e232ea99ff9adfaa8ac5b414345 (patch)
tree46a3659a8e2414607b76957b21f459841462f72e /drivers/iommu
parentiommu/vt-d: Use pci_real_dma_dev() for mapping (diff)
downloadlinux-dev-e3560ee4cfb29e232ea99ff9adfaa8ac5b414345.tar.xz
linux-dev-e3560ee4cfb29e232ea99ff9adfaa8ac5b414345.zip
iommu/vt-d: Remove VMD child device sanity check
Remove the sanity check required for VMD child devices. The new pci_real_dma_dev() DMA alias mechanism places them in the same IOMMU group as the VMD endpoint. Assignment of the group would require assigning the VMD endpoint, where unbinding the VMD endpoint removes the child device domain from the hierarchy. Link: https://lore.kernel.org/r/1579613871-301529-6-git-send-email-jonathan.derrick@intel.com Signed-off-by: Jon Derrick <jonathan.derrick@intel.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Lu Baolu <baolu.lu@linux.intel.com>
Diffstat (limited to 'drivers/iommu')
-rw-r--r--drivers/iommu/intel-iommu.c10
1 files changed, 1 insertions, 9 deletions
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index 72f26e828124..7e2c492f314f 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers/iommu/intel-iommu.c
@@ -774,15 +774,7 @@ static struct intel_iommu *device_to_iommu(struct device *dev, u8 *bus, u8 *devf
if (dev_is_pci(dev)) {
struct pci_dev *pf_pdev;
- pdev = to_pci_dev(dev);
-
-#ifdef CONFIG_X86
- /* VMD child devices currently cannot be handled individually */
- if (is_vmd(pdev->bus))
- return NULL;
-#endif
-
- pdev = pci_real_dma_dev(pdev);
+ pdev = pci_real_dma_dev(to_pci_dev(dev));
/* VFs aren't listed in scope tables; we need to look up
* the PF instead to find the IOMMU. */