From: Zhihong Peng Date: Fri, 17 Apr 2020 03:52:12 +0000 (-0400) Subject: net/ixgbe: fix link status synchronization on BSD X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=0012111a3d879b0b0e27d14a841e2a729545727d;p=dpdk.git net/ixgbe: fix link status synchronization on BSD DPDK does not implement interrupt mechanism on BSD, so force NIC status synchronization. Fixes: dc66e5fd01b9 ("net/ixgbe: improve link state check on VF") Cc: stable@dpdk.org Signed-off-by: Zhihong Peng Tested-by: Zhimin Huang Acked-by: Xiaolong Ye --- diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b/drivers/net/ixgbe/ixgbe_ethdev.c index aa1e8aac51..cf5f1fe709 100644 --- a/drivers/net/ixgbe/ixgbe_ethdev.c +++ b/drivers/net/ixgbe/ixgbe_ethdev.c @@ -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