net/ixgbe: fix link status synchronization on BSD

DPDK does not implement interrupt mechanism on BSD,
so force NIC status synchronization.

Fixes: dc66e5fd01 ("net/ixgbe: improve link state check on VF")
Cc: stable@dpdk.org

Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com>
Tested-by: Zhimin Huang <zhiminx.huang@intel.com>
Acked-by: Xiaolong Ye <xiaolong.ye@intel.com>
This commit is contained in:
Zhihong Peng 2020-04-16 23:52:12 -04:00 committed by Ferruh Yigit
parent 2e873cf407
commit 0012111a3d

View File

@ -4257,6 +4257,11 @@ ixgbe_dev_link_update_share(struct rte_eth_dev *dev,
if (wait_to_complete == 0 || dev->data->dev_conf.intr_conf.lsc != 0)
wait = 0;
/* BSD has no interrupt mechanism, so force NIC status synchronization. */
#ifdef RTE_EXEC_ENV_FREEBSD
wait = 1;
#endif
if (vf)
diag = ixgbevf_check_link(hw, &link_speed, &link_up, wait);
else