Applied: [PATCH Vivid SRU v2] powerpc/eeh: Fix recursive fenced PHB on Broadcom shiner adapter

Kamal Mostafa kamal at canonical.com
Wed Jan 20 21:02:00 UTC 2016


On Wed, 2016-01-20 at 13:48 -0700, tim.gardner at canonical.com wrote:
> From: Gavin Shan <gwshan at 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 at linux.vnet.ibm.com>
> Signed-off-by: Michael Ellerman <mpe at ellerman.id.au>
> (back ported from commit 353169acf1858bb2dc3f91475dafabce547de14c)
> Signed-off-by: Tim Gardner <tim.gardner at canonical.com>
> 
> Conflicts:
> 	arch/powerpc/platforms/powernv/eeh-powernv.c
> Acked-by: Brad Figg <brad.figg at canonical.com>
> Acked-by: Stefan Bader <stefan.bader at canonical.com>
> Signed-off-by: Kamal Mostafa <kamal at canonical.com>
> ---
> 
> This is a replacement patch since the first back port didn't compile. Oops.
> 
>  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..17affaf 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 ((dev->vendor == PCI_VENDOR_ID_BROADCOM &&
> +	     dev->device == 0x1657) ||
> +	    (dev->vendor == PCI_VENDOR_ID_BROADCOM &&
> +	     dev->device == 0x168a) ||
> +	    (dev->vendor == PCI_VENDOR_ID_BROADCOM &&
> +	     dev->device == 0x168e))
>  		edev->pe->state |= EEH_PE_CFG_RESTRICTED;
>  
>  	/*
> -- 
> 1.9.1
> 
> 

(Replaced the first backport of this in vivid/master-next)

 -Kamal





More information about the kernel-team mailing list