ice: Allow VF to request reset as soon as it's initialized
authorBrett Creeley <brett.creeley@intel.com>
Sat, 16 May 2020 00:55:01 +0000 (17:55 -0700)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Sun, 31 May 2020 10:50:37 +0000 (03:50 -0700)
A VF driver has the ability to request reset via VIRTCHNL_OP_RESET_VF.
This is a required step in VF driver load. Currently, the PF is only
allowing a VF to request reset using this method after the VF has
already communicated resources via VIRTCHNL_OP_GET_VF_RESOURCES.
However, this is incorrect because the VF can request reset before
requesting resources. Fix this by allowing the VF to request a reset
once it has been initialized.

Signed-off-by: Brett Creeley <brett.creeley@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c

index 2916cfb..16a2f25 100644 (file)
@@ -2014,7 +2014,7 @@ err:
  */
 static void ice_vc_reset_vf_msg(struct ice_vf *vf)
 {
-       if (test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states))
+       if (test_bit(ICE_VF_STATE_INIT, vf->vf_states))
                ice_reset_vf(vf, false);
 }