All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jon Derrick <jonathan.derrick@intel.com>
To: <iommu@lists.linux-foundation.org>
Cc: Ashok Raj <ashok.raj@intel.com>,
	linux-pci@vger.kernel.org,
	Jon Derrick <jonathan.derrick@intel.com>
Subject: [PATCH v1 3/3] iommu/vt-d: Remove real DMA lookup in find_domain
Date: Wed, 27 May 2020 10:56:17 -0600	[thread overview]
Message-ID: <20200527165617.297470-4-jonathan.derrick@intel.com> (raw)
In-Reply-To: <20200527165617.297470-1-jonathan.derrick@intel.com>

By removing the real DMA indirection in find_domain(), we can allow
sub-devices of a real DMA device to have their own valid
device_domain_info. The dmar lookup and context entry removal paths have
been fixed to account for sub-devices.

Fixes: 2b0140c69637 ("iommu/vt-d: Use pci_real_dma_dev() for mapping")
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=207575
Signed-off-by: Jon Derrick <jonathan.derrick@intel.com>
---
 drivers/iommu/intel-iommu.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index 6d39b9b..5767882 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers/iommu/intel-iommu.c
@@ -2436,9 +2436,6 @@ struct dmar_domain *find_domain(struct device *dev)
 	if (unlikely(attach_deferred(dev) || iommu_dummy(dev)))
 		return NULL;
 
-	if (dev_is_pci(dev))
-		dev = &pci_real_dma_dev(to_pci_dev(dev))->dev;
-
 	/* No lock here, assumes no domain exit in normal case */
 	info = get_domain_info(dev);
 	if (likely(info))
-- 
1.8.3.1

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

WARNING: multiple messages have this Message-ID (diff)
From: Jon Derrick <jonathan.derrick@intel.com>
To: <iommu@lists.linux-foundation.org>
Cc: <linux-pci@vger.kernel.org>, Joerg Roedel <joro@8bytes.org>,
	Lu Baolu <baolu.lu@linux.intel.com>,
	Jacob Pan <jacob.jun.pan@linux.intel.com>,
	Sai Praneeth Prakhya <sai.praneeth.prakhya@intel.com>,
	Ashok Raj <ashok.raj@intel.com>,
	Jon Derrick <jonathan.derrick@intel.com>
Subject: [PATCH v1 3/3] iommu/vt-d: Remove real DMA lookup in find_domain
Date: Wed, 27 May 2020 10:56:17 -0600	[thread overview]
Message-ID: <20200527165617.297470-4-jonathan.derrick@intel.com> (raw)
In-Reply-To: <20200527165617.297470-1-jonathan.derrick@intel.com>

By removing the real DMA indirection in find_domain(), we can allow
sub-devices of a real DMA device to have their own valid
device_domain_info. The dmar lookup and context entry removal paths have
been fixed to account for sub-devices.

Fixes: 2b0140c69637 ("iommu/vt-d: Use pci_real_dma_dev() for mapping")
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=207575
Signed-off-by: Jon Derrick <jonathan.derrick@intel.com>
---
 drivers/iommu/intel-iommu.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index 6d39b9b..5767882 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers/iommu/intel-iommu.c
@@ -2436,9 +2436,6 @@ struct dmar_domain *find_domain(struct device *dev)
 	if (unlikely(attach_deferred(dev) || iommu_dummy(dev)))
 		return NULL;
 
-	if (dev_is_pci(dev))
-		dev = &pci_real_dma_dev(to_pci_dev(dev))->dev;
-
 	/* No lock here, assumes no domain exit in normal case */
 	info = get_domain_info(dev);
 	if (likely(info))
-- 
1.8.3.1


  parent reply	other threads:[~2020-05-27 16:56 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-27 16:56 [PATCH v1 0/3] iommu/vt-d: real DMA sub-device info allocation Jon Derrick
2020-05-27 16:56 ` Jon Derrick
2020-05-27 16:56 ` [PATCH v1 1/3] iommu/vt-d: Only clear real DMA device's context entries Jon Derrick
2020-05-27 16:56   ` Jon Derrick
2020-05-28  6:59   ` Lu Baolu
2020-05-28  6:59     ` Lu Baolu
2020-05-27 16:56 ` [PATCH v1 2/3] iommu/vt-d: Allocate domain info for real DMA sub-devices Jon Derrick
2020-05-27 16:56   ` Jon Derrick
2020-05-28  7:01   ` Lu Baolu
2020-05-28  7:01     ` Lu Baolu
2020-05-28  7:14     ` Lu Baolu
2020-05-28  7:14       ` Lu Baolu
2020-05-27 16:56 ` Jon Derrick [this message]
2020-05-27 16:56   ` [PATCH v1 3/3] iommu/vt-d: Remove real DMA lookup in find_domain Jon Derrick
2020-05-28  7:02   ` Lu Baolu
2020-05-28  7:02     ` Lu Baolu
2020-05-29 13:12 ` [PATCH v1 0/3] iommu/vt-d: real DMA sub-device info allocation Joerg Roedel
2020-05-29 13:12   ` Joerg Roedel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200527165617.297470-4-jonathan.derrick@intel.com \
    --to=jonathan.derrick@intel.com \
    --cc=ashok.raj@intel.com \
    --cc=iommu@lists.linux-foundation.org \
    --cc=linux-pci@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.