Re: [PATCH] tg3: Fix rx hang on MTU change with 5717/5719

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Dec 16, 2017 at 2:51 AM, Brian King <brking@xxxxxxxxxxxxxxxxxx> wrote:
> This fixes a hang issue seen when changing the MTU size from 1500 MTU
> to 9000 MTU on both 5717 and 5719 chips. In discussion with Broadcom,
> they've indicated that these chipsets have the same phy as the 57766
> chipset, so the same workarounds apply. This has been tested by IBM
> on both Power 8 and Power 9 systems as well as by Broadcom on x86
> hardware and has been confirmed to resolve the hang issue.
Thanks for the patch. We need more time to review.
>
> Cc: stable <stable@xxxxxxxxxxxxxxx>
> Signed-off-by: Brian King <brking@xxxxxxxxxxxxxxxxxx>
> ---
>  drivers/net/ethernet/broadcom/tg3.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
> index de51c21..d09c5a9 100644
> --- a/drivers/net/ethernet/broadcom/tg3.c
> +++ b/drivers/net/ethernet/broadcom/tg3.c
> @@ -14225,7 +14225,9 @@ static int tg3_change_mtu(struct net_device *dev, int new_mtu)
>         /* Reset PHY, otherwise the read DMA engine will be in a mode that
>          * breaks all requests to 256 bytes.
>          */
> -       if (tg3_asic_rev(tp) == ASIC_REV_57766)
> +       if (tg3_asic_rev(tp) == ASIC_REV_57766 ||
> +           tg3_asic_rev(tp) == ASIC_REV_5717 ||
> +           tg3_asic_rev(tp) == ASIC_REV_5719)
>                 reset_phy = true;
>
>         err = tg3_restart_hw(tp, reset_phy);
> --
> 1.8.3.1
>



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]