4.18-stable review patch. If anyone has any objections, please let me know.
------------------
From: Yunsheng Lin linyunsheng@huawei.com
[ Upstream commit 3f8601f0f5716c4e63a9f215bbc581df42859d61 ]
When ping is runnig and user executes the loopback selftest, the ping cmd will stop and exit.
This patch fixes it by using the hns3_nic_net_open/stop to offline the netdev when doing loopback selftest.
Fixes: c39c4d98dc65 ("net: hns3: Add mac loopback selftest support in hns3 driver") Signed-off-by: Yunsheng Lin linyunsheng@huawei.com Signed-off-by: Peng Li lipeng321@huawei.com Signed-off-by: Salil Mehta salil.mehta@huawei.com Signed-off-by: David S. Miller davem@davemloft.net Signed-off-by: Sasha Levin sashal@kernel.org Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org --- drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
--- a/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c +++ b/drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c @@ -310,7 +310,7 @@ static void hns3_self_test(struct net_de h->flags & HNAE3_SUPPORT_MAC_LOOPBACK;
if (if_running) - dev_close(ndev); + ndev->netdev_ops->ndo_stop(ndev);
#if IS_ENABLED(CONFIG_VLAN_8021Q) /* Disable the vlan filter for selftest does not support it */ @@ -348,7 +348,7 @@ static void hns3_self_test(struct net_de #endif
if (if_running) - dev_open(ndev); + ndev->netdev_ops->ndo_open(ndev); }
static int hns3_get_sset_count(struct net_device *netdev, int stringset)