diff options
| author | Borislav Petkov <bp@suse.de> | 2022-09-27 15:29:33 +0200 | 
|---|---|---|
| committer | Borislav Petkov <bp@suse.de> | 2022-09-27 15:29:33 +0200 | 
| commit | c0cca6a66458a0daa627774de7ca2b678a6bb3d8 (patch) | |
| tree | a3fc9914daf2ca2fdedc7e4810302affdeb5680b /drivers/net/ethernet/intel/ice/ice_vf_lib.c | |
| parent | 57646d6769f13f9484ffc6869c493e25a6568073 (diff) | |
| parent | e7ccba7728cff0e0f1299951571f209fcadcb7b1 (diff) | |
Merge tag 'irqchip-fixes-6.0-2' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms into irq/urgent
Pull more irqchip fixes for 6.0 from Marc Zyngier:
  - A couple of configuration fixes for the recently merged Loongarch drivers
  - A fix to avoid dynamic allocation of a cpumask which was causing issues
    with PREEMPT_RT and the GICv3 ITS
  - A tightening of an error check in the stm32 exti driver
Link: https://lore.kernel.org/r/20220916085158.2592518-1-maz@kernel.org
Diffstat (limited to 'drivers/net/ethernet/intel/ice/ice_vf_lib.c')
| -rw-r--r-- | drivers/net/ethernet/intel/ice/ice_vf_lib.c | 15 | 
1 files changed, 10 insertions, 5 deletions
diff --git a/drivers/net/ethernet/intel/ice/ice_vf_lib.c b/drivers/net/ethernet/intel/ice/ice_vf_lib.c index 8fd7c3e37f5e..0abeed092de1 100644 --- a/drivers/net/ethernet/intel/ice/ice_vf_lib.c +++ b/drivers/net/ethernet/intel/ice/ice_vf_lib.c @@ -571,8 +571,10 @@ int ice_reset_vf(struct ice_vf *vf, u32 flags)  	if (ice_is_vf_disabled(vf)) {  		vsi = ice_get_vf_vsi(vf); -		if (WARN_ON(!vsi)) +		if (!vsi) { +			dev_dbg(dev, "VF is already removed\n");  			return -EINVAL; +		}  		ice_vsi_stop_lan_tx_rings(vsi, ICE_NO_RESET, vf->vf_id);  		ice_vsi_stop_all_rx_rings(vsi);  		dev_dbg(dev, "VF is already disabled, there is no need for resetting it, telling VM, all is fine %d\n", @@ -762,13 +764,16 @@ static int ice_cfg_mac_antispoof(struct ice_vsi *vsi, bool enable)  static int ice_vsi_ena_spoofchk(struct ice_vsi *vsi)  {  	struct ice_vsi_vlan_ops *vlan_ops; -	int err; +	int err = 0;  	vlan_ops = ice_get_compat_vsi_vlan_ops(vsi); -	err = vlan_ops->ena_tx_filtering(vsi); -	if (err) -		return err; +	/* Allow VF with VLAN 0 only to send all tagged traffic */ +	if (vsi->type != ICE_VSI_VF || ice_vsi_has_non_zero_vlans(vsi)) { +		err = vlan_ops->ena_tx_filtering(vsi); +		if (err) +			return err; +	}  	return ice_cfg_mac_antispoof(vsi, true);  }  | 
