linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Wei Yang <weiyang@linux.vnet.ibm.com>
To: gwshan@linux.vnet.ibm.com, bhelgaas@google.com, mpe@ellerman.id.au
Cc: linuxppc-dev@lists.ozlabs.org, linux-pci@vger.kernel.org,
	Wei Yang <weiyang@linux.vnet.ibm.com>
Subject: [PATCH V9 05/11] powerpc/eeh: Cache only BARs, not windows or IOV BARs
Date: Fri, 17 Jul 2015 14:02:35 +0800	[thread overview]
Message-ID: <1437112961-17275-6-git-send-email-weiyang@linux.vnet.ibm.com> (raw)
In-Reply-To: <1437112961-17275-1-git-send-email-weiyang@linux.vnet.ibm.com>

EEH address cache, which helps to locate the PCI device according to
the given (physical) MMIO address, didn't cover PCI bridges. Also, it
shouldn't return PF with address in PF's IOV BARs. Instead, the VFs
should be returned.

Also, by doing so, it removes the type check in
eeh_addr_cache_insert_dev(), since bridge's window would not be cached.

The patch restricts the address cache to cover first 7 BARs for the
above purposes.

[gwshan: changelog]
Signed-off-by: Wei Yang <weiyang@linux.vnet.ibm.com>
Acked-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
---
 arch/powerpc/kernel/eeh_cache.c |    6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/arch/powerpc/kernel/eeh_cache.c b/arch/powerpc/kernel/eeh_cache.c
index a1e86e1..e6887f0 100644
--- a/arch/powerpc/kernel/eeh_cache.c
+++ b/arch/powerpc/kernel/eeh_cache.c
@@ -196,7 +196,7 @@ static void __eeh_addr_cache_insert_dev(struct pci_dev *dev)
 	}
 
 	/* Walk resources on this device, poke them into the tree */
-	for (i = 0; i < DEVICE_COUNT_RESOURCE; i++) {
+	for (i = 0; i <= PCI_ROM_RESOURCE; i++) {
 		resource_size_t start = pci_resource_start(dev,i);
 		resource_size_t end = pci_resource_end(dev,i);
 		unsigned long flags = pci_resource_flags(dev,i);
@@ -222,10 +222,6 @@ void eeh_addr_cache_insert_dev(struct pci_dev *dev)
 {
 	unsigned long flags;
 
-	/* Ignore PCI bridges */
-	if ((dev->class >> 16) == PCI_BASE_CLASS_BRIDGE)
-		return;
-
 	spin_lock_irqsave(&pci_io_addr_cache_root.piar_lock, flags);
 	__eeh_addr_cache_insert_dev(dev);
 	spin_unlock_irqrestore(&pci_io_addr_cache_root.piar_lock, flags);
-- 
1.7.9.5

  parent reply	other threads:[~2015-07-17  6:03 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-17  6:02 [PATCH V9 00/11] VF EEH on Power8 Wei Yang
2015-07-17  6:02 ` [PATCH V9 01/11] PCI/IOV: Rename and export virtfn_add/virtfn_remove Wei Yang
2015-07-17  6:02 ` [PATCH V9 02/11] PCI: Add pcibios_bus_add_device() weak function Wei Yang
2015-07-17  6:02 ` [PATCH V9 03/11] powerpc/pci: Cache VF index in pci_dn Wei Yang
2015-07-17  6:02 ` [PATCH V9 04/11] powerpc/pci: Remove VFs prior to PF Wei Yang
2015-07-17  6:02 ` Wei Yang [this message]
2015-07-17  6:02 ` [PATCH V9 06/11] powerpc/powernv: EEH device for VF Wei Yang
2015-07-17  6:02 ` [PATCH V9 07/11] powerpc/eeh: Create PE for VFs Wei Yang
2015-07-17  6:02 ` [PATCH V9 08/11] powerpc/powernv: Support EEH reset for VF PE Wei Yang
2015-07-17  6:02 ` [PATCH V9 09/11] powerpc/powernv: Support PCI config restore for VFs Wei Yang
2015-07-17  6:02 ` [PATCH V9 10/11] powerpc/eeh: Support error recovery for VF PE Wei Yang
2015-07-17  6:02 ` [PATCH V9 11/11] powerpc/powernv: compound PE for VFs Wei Yang
2015-07-29  3:17   ` Wei Yang
2015-09-09  2:48     ` Gavin Shan
2015-09-09  3:36       ` Richard Yang
2015-09-09  3:52         ` Gavin Shan
2015-09-09  6:00           ` Richard Yang
2015-09-09  4:59         ` Benjamin Herrenschmidt
2015-09-09  5:53           ` Richard Yang
2015-09-09  5:22         ` Alexey Kardashevskiy
2015-09-09  6:01           ` Richard Yang
2015-09-17  0:28             ` Gavin Shan

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=1437112961-17275-6-git-send-email-weiyang@linux.vnet.ibm.com \
    --to=weiyang@linux.vnet.ibm.com \
    --cc=bhelgaas@google.com \
    --cc=gwshan@linux.vnet.ibm.com \
    --cc=linux-pci@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mpe@ellerman.id.au \
    /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;
as well as URLs for NNTP newsgroup(s).