net/i40e: fix link status update

Link status is not updated correctly, link speed is 0
when link is up and link speed is not 0 when link is
down. This patch fixes the issue.

Fixes: eef2daf2e199 ("net/i40e: fix link update no wait")
Cc: stable@dpdk.org

Signed-off-by: Keith Wiles <keith.wiles@intel.com>
Signed-off-by: Beilei Xing <beilei.xing@intel.com>
This commit is contained in:
Beilei Xing 2018-05-10 10:26:29 +08:00 committed by Ferruh Yigit
parent 2f203d44ba
commit b5f6272c24

View File

@ -2513,7 +2513,7 @@ update_link_no_wait(struct i40e_hw *hw, struct rte_eth_link *link)
reg_val &= I40E_REG_LINK_UP;
link->link_status = (reg_val == I40E_REG_LINK_UP) ? 1 : 0;
if (unlikely(link->link_status != 0))
if (unlikely(link->link_status == 0))
return;
/* Parse the link status */
@ -2572,7 +2572,7 @@ update_link_wait(struct i40e_hw *hw, struct rte_eth_link *link,
link->link_status = link_status.link_info & I40E_AQ_LINK_UP;
if (unlikely(link->link_status != 0))
return;
break;
rte_delay_ms(CHECK_INTERVAL);
} while (--rep_cnt);