[PATCH net-next 06/23] {topost} net: hns3: fix for ipv6 address loss problem after setting channels

From: Peng Li
Date: Wed Mar 07 2018 - 21:44:08 EST


From: Fuyun Liang <liangfuyun1@xxxxxxxxxx>

The function of dev_close and dev_open is just likes ifconfig <netif> down
and ifconfig <netif> up. The ipv6 address will be lost after dev_close and
dev_open are called. This patch uses hns3_nic_net_stop to replace dev_close
and uses hns3_nic_net_open to replace dev_open.

Signed-off-by: Fuyun Liang <liangfuyun1@xxxxxxxxxx>
Signed-off-by: Peng Li <lipeng321@xxxxxxxxxx>
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
index 1bebfd9..83f4b36 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
@@ -3411,7 +3411,7 @@ int hns3_set_channels(struct net_device *netdev,
return 0;

if (if_running)
- dev_close(netdev);
+ hns3_nic_net_stop(netdev);

hns3_clear_all_ring(h);

@@ -3440,7 +3440,7 @@ int hns3_set_channels(struct net_device *netdev,

open_netdev:
if (if_running)
- dev_open(netdev);
+ hns3_nic_net_open(netdev);

return ret;
}
--
2.9.3