From: Peng Zhang <peng1x.zh...@intel.com> Add DCF state checking mechanism which will conduct whether reset is done.And modify error code to avoid misleading.
Fixes: b71573ec2fc2 ("net/ice: retry getting VF VSI map after failure") Cc: sta...@dpdk.org Signed-off-by: Peng Zhang <peng1x.zh...@intel.com> --- drivers/net/ice/ice_dcf.c | 3 ++- drivers/net/ice/ice_switch_filter.c | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/net/ice/ice_dcf.c b/drivers/net/ice/ice_dcf.c index 7f0c074b01..3808272ea3 100644 --- a/drivers/net/ice/ice_dcf.c +++ b/drivers/net/ice/ice_dcf.c @@ -544,7 +544,8 @@ ice_dcf_handle_vsi_update_event(struct ice_dcf_hw *hw) for (;;) { if (ice_dcf_get_vf_resource(hw) == 0 && - ice_dcf_get_vf_vsi_map(hw) >= 0) { + ice_dcf_get_vf_vsi_map(hw) >= 0 && + ice_dcf_check_reset_done(hw) == 0) { err = 0; break; } diff --git a/drivers/net/ice/ice_switch_filter.c b/drivers/net/ice/ice_switch_filter.c index 36c9bffb73..199a981018 100644 --- a/drivers/net/ice/ice_switch_filter.c +++ b/drivers/net/ice/ice_switch_filter.c @@ -434,7 +434,7 @@ ice_switch_create(struct ice_adapter *ad, flow->rule = filter_conf_ptr; } else { if (ice_dcf_adminq_need_retry(ad)) - ret = -EAGAIN; + ret = -EBUSY; else ret = -EINVAL; -- 2.25.1