From: Fuyun Liang Date: Sat, 10 Mar 2018 03:29:24 +0000 (+0800) Subject: net: hns3: fix for ipv6 address loss problem after setting channels X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=20e4bf982b72e5716233542d73b1e516485b71fb;p=openwrt%2Fstaging%2Fblogic.git net: hns3: fix for ipv6 address loss problem after setting channels The function of dev_close and dev_open is just likes ifconfig down and ifconfig 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 Signed-off-by: Peng Li Signed-off-by: David S. Miller --- diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c index 8113d2236edd..4dba97498b63 100644 --- a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c +++ b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c @@ -3503,7 +3503,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); @@ -3546,7 +3546,7 @@ int hns3_set_channels(struct net_device *netdev, open_netdev: if (if_running) - dev_open(netdev); + hns3_nic_net_open(netdev); return ret; }