From d1ced85a7e7a193051e96c2d34a8961a2e3f96d9 Mon Sep 17 00:00:00 2001 From: Huisong Li Date: Sat, 15 May 2021 08:52:38 +0800 Subject: [PATCH] net/hns3: fix link speed when VF device is down When the port is link down state, it is meaningless to display the port link speed. It should be an undefined state. Fixes: 59fad0f32135 ("net/hns3: support link update operation") Cc: stable@dpdk.org Signed-off-by: Huisong Li Signed-off-by: Min Hu (Connor) --- drivers/net/hns3/hns3_ethdev_vf.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/net/hns3/hns3_ethdev_vf.c b/drivers/net/hns3/hns3_ethdev_vf.c index c64961632c..41dd8ee129 100644 --- a/drivers/net/hns3/hns3_ethdev_vf.c +++ b/drivers/net/hns3/hns3_ethdev_vf.c @@ -2205,16 +2205,18 @@ hns3vf_dev_link_update(struct rte_eth_dev *eth_dev, case ETH_SPEED_NUM_50G: case ETH_SPEED_NUM_100G: case ETH_SPEED_NUM_200G: - new_link.link_speed = mac->link_speed; + if (mac->link_status) + new_link.link_speed = mac->link_speed; break; default: if (mac->link_status) new_link.link_speed = ETH_SPEED_NUM_UNKNOWN; - else - new_link.link_speed = ETH_SPEED_NUM_NONE; break; } + if (!mac->link_status) + new_link.link_speed = ETH_SPEED_NUM_NONE; + new_link.link_duplex = mac->link_duplex; new_link.link_status = mac->link_status ? ETH_LINK_UP : ETH_LINK_DOWN; new_link.link_autoneg = -- 2.20.1