Hi Vlad, > -----Original Message----- > From: Vlad Zolotarov [mailto:vladz at cloudius-systems.com] > Sent: Sunday, January 4, 2015 4:30 PM > To: Ouyang, Changchun; dev at dpdk.org > Subject: Re: [dpdk-dev] [PATCH v4 2/6] ixgbe: Negotiate VF API version > > > On 01/04/15 10:26, Vlad Zolotarov wrote: > > > > On 01/04/15 09:18, Ouyang Changchun wrote: > >> Negotiate API version with VF when receiving the > >> IXGBE_VF_API_NEGOTIATE message. > >> > >> Signed-off-by: Changchun Ouyang <changchun.ouyang at intel.com> > > > > Reviewed-by: Vlad Zolotarov <vladz at cloudius-systems.com>
Thanks for your reviewing. > > One small remark below. > > > > >> --- > >> lib/librte_pmd_ixgbe/ixgbe_ethdev.h | 1 + > >> lib/librte_pmd_ixgbe/ixgbe_pf.c | 25 +++++++++++++++++++++++++ > >> 2 files changed, 26 insertions(+) > >> > >> diff --git a/lib/librte_pmd_ixgbe/ixgbe_ethdev.h > >> b/lib/librte_pmd_ixgbe/ixgbe_ethdev.h > >> index ca99170..730098d 100644 > >> --- a/lib/librte_pmd_ixgbe/ixgbe_ethdev.h > >> +++ b/lib/librte_pmd_ixgbe/ixgbe_ethdev.h > >> @@ -159,6 +159,7 @@ struct ixgbe_vf_info { > >> uint16_t tx_rate[IXGBE_MAX_QUEUE_NUM_PER_VF]; > >> uint16_t vlan_count; > >> uint8_t spoofchk_enabled; > >> + uint8_t api_version; > >> }; > >> /* > >> diff --git a/lib/librte_pmd_ixgbe/ixgbe_pf.c > >> b/lib/librte_pmd_ixgbe/ixgbe_pf.c index 51da1fd..495aff5 100644 > >> --- a/lib/librte_pmd_ixgbe/ixgbe_pf.c > >> +++ b/lib/librte_pmd_ixgbe/ixgbe_pf.c > >> @@ -469,6 +469,28 @@ ixgbe_set_vf_lpe(struct rte_eth_dev *dev, > >> __rte_unused uint32_t vf, uint32_t *ms > >> } > >> static int > >> +ixgbe_negotiate_vf_api(struct rte_eth_dev *dev, uint32_t vf, > >> uint32_t *msgbuf) > >> +{ > >> + uint32_t api_version = msgbuf[1]; > >> + struct ixgbe_vf_info *vfinfo = > >> + *IXGBE_DEV_PRIVATE_TO_P_VFDATA(dev->data->dev_private); > >> + > >> + switch (api_version) { > >> + case ixgbe_mbox_api_10: > >> + case ixgbe_mbox_api_11: > > Why version 2.0 is not negotiated? > Because it doesn't fully support 2.0 features yet. Thanks Changchun