From: Yinghai <yinghai.lu@oracle.com>
To: Roland Dreier <rdreier@cisco.com>
Cc: Jesse Barnes <jbarnes@virtuousgeek.org>,
Chris Wright <chrisw@sous-sol.org>,
David.Woodhouse@intel.com, fenghua.yu@intel.com,
linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org,
iommu@lists.linux-foundation.org
Subject: Re: [PATCH 4/6] pci/dmar/sriov: use physfn to search drhd for VF
Date: Thu, 08 Apr 2010 13:52:25 -0700 [thread overview]
Message-ID: <4BBE4209.3080900@oracle.com> (raw)
In-Reply-To: <adawrwhwyiq.fsf@roland-alpha.cisco.com>
please check
Subject: [PATCH] pci/dmar/sriov: use physfn to search drhd for VF
When virtfn is used, we should use physfn to find correct drhd
-v2: add pci_physfn() Suggested by Roland Dreier <rdreier@cisco.com>
do can remove ifdef in dmar.c
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
---
drivers/pci/dmar.c | 2 ++
include/linux/pci.h | 10 ++++++++++
2 files changed, 12 insertions(+)
Index: linux-2.6/drivers/pci/dmar.c
===================================================================
--- linux-2.6.orig/drivers/pci/dmar.c
+++ linux-2.6/drivers/pci/dmar.c
@@ -534,6 +534,8 @@ dmar_find_matched_drhd_unit(struct pci_d
struct dmar_drhd_unit *dmaru = NULL;
struct acpi_dmar_hardware_unit *drhd;
+ dev = pci_physfn(dev);
+
list_for_each_entry(dmaru, &dmar_drhd_units, list) {
drhd = container_of(dmaru->hdr,
struct acpi_dmar_hardware_unit,
Index: linux-2.6/include/linux/pci.h
===================================================================
--- linux-2.6.orig/include/linux/pci.h
+++ linux-2.6/include/linux/pci.h
@@ -334,6 +334,16 @@ struct pci_dev {
#endif
};
+static inline struct pci_dev *pci_physfn(struct pci_dev *dev)
+{
+#ifdef CONFIG_PCI_IOV
+ if (dev->is_virtfn)
+ dev = dev->physfn;
+#endif
+
+ return dev;
+}
+
extern struct pci_dev *alloc_pci_dev(void);
#define pci_dev_b(n) list_entry(n, struct pci_dev, bus_list)
next prev parent reply other threads:[~2010-04-08 20:54 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-08 18:58 [PATCH 0/6] pci/dmar: small cleanup Yinghai Lu
2010-04-08 18:58 ` [PATCH 1/6] pci/dmar: Don't complain that IOPAIC is not supported Yinghai Lu
2010-04-09 15:33 ` David Woodhouse
2010-04-08 18:58 ` [PATCH 2/6] pci/dmar: Print out iommu seq_id Yinghai Lu
2010-04-08 18:58 ` [PATCH 3/6] pci/dmar: remove the noisy print out about unmapping Yinghai Lu
2010-04-09 15:34 ` David Woodhouse
2010-04-08 18:58 ` [PATCH 4/6] pci/dmar/sriov: use physfn to search drhd for VF Yinghai Lu
2010-04-08 19:10 ` Roland Dreier
2010-04-08 20:52 ` Yinghai [this message]
2010-04-08 20:56 ` Roland Dreier
2010-04-08 23:24 ` Chris Wright
2010-04-09 0:07 ` Yinghai
2010-04-09 0:16 ` Chris Wright
2010-04-09 15:54 ` Jesse Barnes
2010-04-08 18:58 ` [PATCH 5/6] pci/dmar: Fix link warning Yinghai Lu
2010-04-08 19:31 ` Chris Wright
2010-04-08 18:58 ` [PATCH 6/6] intel-iommu: Don't call domain_exit if can not attach with iommu Yinghai Lu
2010-04-09 15:43 ` David Woodhouse
2010-04-09 17:49 ` Yinghai
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=4BBE4209.3080900@oracle.com \
--to=yinghai.lu@oracle.com \
--cc=David.Woodhouse@intel.com \
--cc=chrisw@sous-sol.org \
--cc=fenghua.yu@intel.com \
--cc=iommu@lists.linux-foundation.org \
--cc=jbarnes@virtuousgeek.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=rdreier@cisco.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox