diff options
Diffstat (limited to 'drivers/net/ethernet/intel/ice/ice_lib.c')
| -rw-r--r-- | drivers/net/ethernet/intel/ice/ice_lib.c | 12 | 
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/net/ethernet/intel/ice/ice_lib.c b/drivers/net/ethernet/intel/ice/ice_lib.c index a830f7f9aed0..0c4ec9264071 100644 --- a/drivers/net/ethernet/intel/ice/ice_lib.c +++ b/drivers/net/ethernet/intel/ice/ice_lib.c @@ -1986,8 +1986,8 @@ int ice_vsi_cfg_xdp_txqs(struct ice_vsi *vsi)  	if (ret)  		return ret; -	ice_for_each_xdp_txq(vsi, i) -		vsi->xdp_rings[i]->xsk_pool = ice_tx_xsk_pool(vsi->xdp_rings[i]); +	ice_for_each_rxq(vsi, i) +		ice_tx_xsk_pool(vsi, i);  	return ret;  } @@ -3181,7 +3181,7 @@ int ice_vsi_rebuild(struct ice_vsi *vsi, bool init_vsi)  	pf = vsi->back;  	vtype = vsi->type; -	if (WARN_ON(vtype == ICE_VSI_VF) && !vsi->vf) +	if (WARN_ON(vtype == ICE_VSI_VF && !vsi->vf))  		return -EINVAL;  	ice_vsi_init_vlan_ops(vsi); @@ -4062,7 +4062,11 @@ int ice_vsi_del_vlan_zero(struct ice_vsi *vsi)  	if (err && err != -EEXIST)  		return err; -	return 0; +	/* when deleting the last VLAN filter, make sure to disable the VLAN +	 * promisc mode so the filter isn't left by accident +	 */ +	return ice_clear_vsi_promisc(&vsi->back->hw, vsi->idx, +				    ICE_MCAST_VLAN_PROMISC_BITS, 0);  }  /**  | 
