On 9/22/2017 1:36 PM, Michal Jastrzebski wrote: > From: Tomasz Kulasek <tomaszx.kula...@intel.com> > > mixed_enums: Mixing enum types enum i40e_vsi_type and enum > virtchnl_vsi_type for type > > Coverity issue 158651 > Fixes: a58860f68929 ("net/i40e/base: use new virtchnl header file") > Cc: jingjing...@intel.com > Cc: sta...@dpdk.org > > Signed-off-by: Tomasz Kulasek <tomaszx.kula...@intel.com> > --- > drivers/net/i40e/i40e_ethdev_vf.c | 10 +++++++++- > 1 file changed, 9 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/i40e/i40e_ethdev_vf.c > b/drivers/net/i40e/i40e_ethdev_vf.c > index 73c315a..a8d2740 100644 > --- a/drivers/net/i40e/i40e_ethdev_vf.c > +++ b/drivers/net/i40e/i40e_ethdev_vf.c > @@ -1295,7 +1295,15 @@ static int i40evf_dev_xstats_get(struct rte_eth_dev > *dev, > if (hw->mac.type == I40E_MAC_X722_VF) > vf->flags = I40E_FLAG_RSS_AQ_CAPABLE; > vf->vsi.vsi_id = vf->vsi_res->vsi_id; > - vf->vsi.type = (enum i40e_vsi_type)vf->vsi_res->vsi_type; > + > + switch (vf->vsi_res->vsi_type) { > + case VIRTCHNL_VSI_SRIOV: > + vf->vsi.type = I40E_VSI_SRIOV; > + break; > + default: > + vf->vsi.type = I40E_VSI_TYPE_UNKNOWN;
This changes the behavior. Previously: vsi_type == VIRTCHNL_VSI_TYPE_INVALID ? type = I40E_VSI_MAIN Now: vsi_type == VIRTCHNL_VSI_TYPE_INVALID ? type = I40E_VSI_TYPE_UNKNOWN > + break; > + } > vf->vsi.nb_qps = vf->vsi_res->num_queue_pairs; > vf->vsi.adapter = I40E_DEV_PRIVATE_TO_ADAPTER(dev->data->dev_private); > >