While adding a vsi for an ice PF, set the ICE_AQ_VSI_SW_FLAG_LOCAL_LB flag. This will prevent packets from being dropped when using a virtual MAC address with VRRP.
Also set the ICE_AQ_VSI_SW_FLAG_SRC_PRUNE flag to prevent transmitted packets from being looped back in some circumstances. Fixes: f9cf4f864150 ("net/ice: support device initialization") Signed-off-by: Matthew Smith <mgsm...@netgate.com> --- drivers/net/intel/ice/ice_ethdev.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/net/intel/ice/ice_ethdev.c b/drivers/net/intel/ice/ice_ethdev.c index 3cdfa16f77..21d3795954 100644 --- a/drivers/net/intel/ice/ice_ethdev.c +++ b/drivers/net/intel/ice/ice_ethdev.c @@ -1696,6 +1696,10 @@ ice_setup_vsi(struct ice_pf *pf, enum ice_vsi_type type) * by ice_init_hw */ vsi_ctx.info.sw_id = hw->port_info->sw_id; + vsi_ctx.info.sw_flags = ICE_AQ_VSI_SW_FLAG_LOCAL_LB; + vsi_ctx.info.sw_flags |= ICE_AQ_VSI_SW_FLAG_SRC_PRUNE; + cfg = ICE_AQ_VSI_PROP_SW_VALID; + vsi_ctx.info.valid_sections |= rte_cpu_to_le_16(cfg); vsi_ctx.info.sw_flags2 = ICE_AQ_VSI_SW_FLAG_LAN_ENA; /* Allow all untagged or tagged packets */ vsi_ctx.info.inner_vlan_flags = ICE_AQ_VSI_INNER_VLAN_TX_MODE_ALL; -- 2.34.1