Message ID | 20190715085612.8802-2-oohall@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Commit | b1268f4cdba71c0cd40b533778812340d36de8ae |
Headers | show |
Series | [1/5] powerpc/eeh_cache: Don't use pci_dn when inserting new ranges | expand |
Context | Check | Description |
---|---|---|
snowpatch_ozlabs/apply_patch | success | Successfully applied on branch next (f5c20693d8edcd665f1159dc941b9e7f87c17647) |
snowpatch_ozlabs/checkpatch | success | total: 0 errors, 0 warnings, 0 checks, 19 lines checked |
On Mon, Jul 15, 2019 at 06:56:08PM +1000, Oliver O'Halloran wrote: > At the point where we start inserting ranges into the EEH address cache the > binding between pci_dev and eeh_dev has already been set up. Instead of > consulting the pci_dn tree we can retrieve the eeh_dev directly using > pci_dev_to_eeh_dev(). > > Signed-off-by: Oliver O'Halloran <oohall@gmail.com> In fact the binding between pci_dev and eeh_dev is set up right before the calls to eeh_addr_cache_insert_dev() (see eeh_addr_cache_build() and eeh_add_device_tree_late()) so this looks clearly correct to me. A few simple tests of EEH recovery still succeed as well. Reviewed-by: Sam Bobroff <sbobroff@linux.ibm.com> Tested-by: Sam Bobroff <sbobroff@linux.ibm.com> > --- > arch/powerpc/kernel/eeh_cache.c | 10 +--------- > 1 file changed, 1 insertion(+), 9 deletions(-) > > diff --git a/arch/powerpc/kernel/eeh_cache.c b/arch/powerpc/kernel/eeh_cache.c > index 3204723..908ba69 100644 > --- a/arch/powerpc/kernel/eeh_cache.c > +++ b/arch/powerpc/kernel/eeh_cache.c > @@ -156,18 +156,10 @@ eeh_addr_cache_insert(struct pci_dev *dev, resource_size_t alo, > > static void __eeh_addr_cache_insert_dev(struct pci_dev *dev) > { > - struct pci_dn *pdn; > struct eeh_dev *edev; > int i; > > - pdn = pci_get_pdn_by_devfn(dev->bus, dev->devfn); > - if (!pdn) { > - pr_warn("PCI: no pci dn found for dev=%s\n", > - pci_name(dev)); > - return; > - } > - > - edev = pdn_to_eeh_dev(pdn); > + edev = pci_dev_to_eeh_dev(dev); > if (!edev) { > pr_warn("PCI: no EEH dev found for %s\n", > pci_name(dev)); > -- > 2.9.5 >
On Mon, 2019-07-15 at 08:56:08 UTC, Oliver O'Halloran wrote: > At the point where we start inserting ranges into the EEH address cache the > binding between pci_dev and eeh_dev has already been set up. Instead of > consulting the pci_dn tree we can retrieve the eeh_dev directly using > pci_dev_to_eeh_dev(). > > Signed-off-by: Oliver O'Halloran <oohall@gmail.com> Series applied to powerpc next, thanks. https://git.kernel.org/powerpc/c/b1268f4cdba71c0cd40b533778812340d36de8ae cheers
diff --git a/arch/powerpc/kernel/eeh_cache.c b/arch/powerpc/kernel/eeh_cache.c index 3204723..908ba69 100644 --- a/arch/powerpc/kernel/eeh_cache.c +++ b/arch/powerpc/kernel/eeh_cache.c @@ -156,18 +156,10 @@ eeh_addr_cache_insert(struct pci_dev *dev, resource_size_t alo, static void __eeh_addr_cache_insert_dev(struct pci_dev *dev) { - struct pci_dn *pdn; struct eeh_dev *edev; int i; - pdn = pci_get_pdn_by_devfn(dev->bus, dev->devfn); - if (!pdn) { - pr_warn("PCI: no pci dn found for dev=%s\n", - pci_name(dev)); - return; - } - - edev = pdn_to_eeh_dev(pdn); + edev = pci_dev_to_eeh_dev(dev); if (!edev) { pr_warn("PCI: no EEH dev found for %s\n", pci_name(dev));
At the point where we start inserting ranges into the EEH address cache the binding between pci_dev and eeh_dev has already been set up. Instead of consulting the pci_dn tree we can retrieve the eeh_dev directly using pci_dev_to_eeh_dev(). Signed-off-by: Oliver O'Halloran <oohall@gmail.com> --- arch/powerpc/kernel/eeh_cache.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-)