net: hns3: Clear TX/RX rings when stopping port & un-initializing client
authorFuyun Liang <liangfuyun1@huawei.com>
Fri, 25 May 2018 18:43:04 +0000 (19:43 +0100)
committerDavid S. Miller <davem@davemloft.net>
Tue, 29 May 2018 04:04:26 +0000 (00:04 -0400)
commit7b763f3f7e52b1e0284c9f42acc4229935b7ec5f
tree75425004bb92d2796589b5a0a61c92cfa5b85744
parent6986df9686c55464b0fa0f36a02f4da81d99a3b1
net: hns3: Clear TX/RX rings when stopping port & un-initializing client

When we down the port, some packets are left in TX/RX buffer. When we
up the port again, these old packets are forwarded to protocol stack
or are sent to internet. It will make some problem. TX/RX buffer should
be cleared when stopping port. This patch adds some function to ensure
the buffer is clean when port is started. We should clear the rings
when clients are being un-initialized as well.

Fixes: 76ad4f0ee747 ("net: hns3: Add support of HNS3 Ethernet Driver for hip08 SoC")
Signed-off-by: Fuyun Liang <liangfuyun1@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>
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
drivers/net/ethernet/hisilicon/hns3/hns3_enet.h
drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c