bnxt_en: reverse order of TX disable and carrier off
authorEdwin Peer <edwin.peer@broadcom.com>
Thu, 11 Feb 2021 07:24:23 +0000 (02:24 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 4 Mar 2021 10:37:30 +0000 (11:37 +0100)
commitf22cdfcc9df16eccd87a9e4ee7f50b1cf6285bc6
tree0437689fb151f3736d367030af4f0b4cdc0b1f53
parent991d286e194facdb3a50ba8df27afd73afb02e4e
bnxt_en: reverse order of TX disable and carrier off

[ Upstream commit 132e0b65dc2b8bfa9721bfce834191f24fd1d7ed ]

A TX queue can potentially immediately timeout after it is stopped
and the last TX timestamp on that queue was more than 5 seconds ago with
carrier still up.  Prevent these intermittent false TX timeouts
by bringing down carrier first before calling netif_tx_disable().

Fixes: c0c050c58d84 ("bnxt_en: New Broadcom ethernet driver.")
Signed-off-by: Edwin Peer <edwin.peer@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/broadcom/bnxt/bnxt.c