Message ID | 1452713509-28526-1-git-send-email-tim.gardner@canonical.com |
---|---|
State | New |
Headers | show |
On Wed, Jan 13, 2016 at 12:31:49PM -0700, tim.gardner@canonical.com wrote: > From: Gavin Shan <gwshan@linux.vnet.ibm.com> > > BugLink: http://bugs.launchpad.net/bugs/1532942 > > Similar to commit b6541db ("powerpc/eeh: Block PCI config access > upon frozen PE"), this blocks the PCI config space of Broadcom > Shiner adapter until PE reset is completed, to avoid recursive > fenced PHB when dumping PCI config registers during the period > of error recovery. > > ~# lspci -ns 0003:03:00.0 > 0003:03:00.0 0200: 14e4:168a (rev 10) > ~# lspci -s 0003:03:00.0 > 0003:03:00.0 Ethernet controller: Broadcom Corporation \ > NetXtreme II BCM57800 1/10 Gigabit Ethernet (rev 10) > > Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com> > Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> > (back ported from commit 353169acf1858bb2dc3f91475dafabce547de14c) > Signed-off-by: Tim Gardner <tim.gardner@canonical.com> > > Conflicts: > arch/powerpc/platforms/powernv/eeh-powernv.c > --- > arch/powerpc/platforms/powernv/eeh-powernv.c | 9 +++++++-- > 1 file changed, 7 insertions(+), 2 deletions(-) > > diff --git a/arch/powerpc/platforms/powernv/eeh-powernv.c b/arch/powerpc/platforms/powernv/eeh-powernv.c > index e261869..14291eb 100644 > --- a/arch/powerpc/platforms/powernv/eeh-powernv.c > +++ b/arch/powerpc/platforms/powernv/eeh-powernv.c > @@ -193,10 +193,15 @@ static int powernv_eeh_dev_probe(struct pci_dev *dev, void *flag) > * that PE to block its config space. > * > * Broadcom Austin 4-ports NICs (14e4:1657) > + * Broadcom Shiner 4-ports 1G NICs (14e4:168a) > * Broadcom Shiner 2-ports 10G NICs (14e4:168e) > */ > - if ((dev->vendor == PCI_VENDOR_ID_BROADCOM && dev->device == 0x1657) || > - (dev->vendor == PCI_VENDOR_ID_BROADCOM && dev->device == 0x168e)) > + if ((pdn->vendor_id == PCI_VENDOR_ID_BROADCOM && > + pdn->device_id == 0x1657) || > + (pdn->vendor_id == PCI_VENDOR_ID_BROADCOM && > + pdn->device_id == 0x168a) || > + (pdn->vendor_id == PCI_VENDOR_ID_BROADCOM && > + pdn->device_id == 0x168e)) > edev->pe->state |= EEH_PE_CFG_RESTRICTED; > > /* > -- > 1.9.1 > > > -- > kernel-team mailing list > kernel-team@lists.ubuntu.com > https://lists.ubuntu.com/mailman/listinfo/kernel-team Looks like a valid backport.
diff --git a/arch/powerpc/platforms/powernv/eeh-powernv.c b/arch/powerpc/platforms/powernv/eeh-powernv.c index e261869..14291eb 100644 --- a/arch/powerpc/platforms/powernv/eeh-powernv.c +++ b/arch/powerpc/platforms/powernv/eeh-powernv.c @@ -193,10 +193,15 @@ static int powernv_eeh_dev_probe(struct pci_dev *dev, void *flag) * that PE to block its config space. * * Broadcom Austin 4-ports NICs (14e4:1657) + * Broadcom Shiner 4-ports 1G NICs (14e4:168a) * Broadcom Shiner 2-ports 10G NICs (14e4:168e) */ - if ((dev->vendor == PCI_VENDOR_ID_BROADCOM && dev->device == 0x1657) || - (dev->vendor == PCI_VENDOR_ID_BROADCOM && dev->device == 0x168e)) + if ((pdn->vendor_id == PCI_VENDOR_ID_BROADCOM && + pdn->device_id == 0x1657) || + (pdn->vendor_id == PCI_VENDOR_ID_BROADCOM && + pdn->device_id == 0x168a) || + (pdn->vendor_id == PCI_VENDOR_ID_BROADCOM && + pdn->device_id == 0x168e)) edev->pe->state |= EEH_PE_CFG_RESTRICTED; /*