X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fice%2Fice_dcf_parent.c;h=04078345eb0c305899e36227230ef86034d7a968;hb=78156d38e112b33032eedfada65b0df8b047bc31;hp=020f7646711b26b78c6f55dbe213371dc777a251;hpb=7f7cbf80bdb7b57f3f67fe244be4572efa69b374;p=dpdk.git diff --git a/drivers/net/ice/ice_dcf_parent.c b/drivers/net/ice/ice_dcf_parent.c index 020f764671..04078345eb 100644 --- a/drivers/net/ice/ice_dcf_parent.c +++ b/drivers/net/ice/ice_dcf_parent.c @@ -143,6 +143,9 @@ ice_dcf_vsi_update_service_handler(void *param) } } + if (hw->tm_conf.committed) + ice_dcf_replay_vf_bw(hw, reset_param->vf_id); + rte_spinlock_unlock(&vsi_update_lock); free(param); @@ -231,6 +234,7 @@ ice_dcf_handle_pf_event_msg(struct ice_dcf_hw *dcf_hw, case VIRTCHNL_EVENT_RESET_IMPENDING: PMD_DRV_LOG(DEBUG, "VIRTCHNL_EVENT_RESET_IMPENDING event"); start_vsi_reset_thread(dcf_hw, false, 0); + dcf_hw->resetting = true; break; case VIRTCHNL_EVENT_LINK_CHANGE: PMD_DRV_LOG(DEBUG, "VIRTCHNL_EVENT_LINK_CHANGE event"); @@ -354,6 +358,7 @@ err_unroll_fltr_mgmt_struct: err_unroll_alloc: ice_free(hw, hw->port_info); hw->port_info = NULL; + hw->switch_info = NULL; return status; } @@ -367,6 +372,7 @@ static void ice_dcf_uninit_parent_hw(struct ice_hw *hw) ice_free(hw, hw->port_info); hw->port_info = NULL; + hw->switch_info = NULL; ice_clear_all_vsi_ctx(hw); } @@ -482,6 +488,8 @@ ice_dcf_uninit_parent_adapter(struct rte_eth_dev *eth_dev) struct ice_hw *parent_hw = &parent_adapter->hw; eth_dev->data->mac_addrs = NULL; + rte_free(parent_adapter->pf.main_vsi); + parent_adapter->pf.main_vsi = NULL; ice_flow_uninit(parent_adapter); ice_dcf_uninit_parent_hw(parent_hw);