[dpdk-dev] [PATCH v4 2/6] ixgbe: Negotiate VF API version

Vlad Zolotarov vladz at cloudius-systems.com
Sun Jan 4 09:40:06 CET 2015


On 01/04/15 10:37, Ouyang, Changchun wrote:
> 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.

Well, it that case u should not support 2.0 in patch 3 as well.

>
> Thanks
> Changchun
>



More information about the dev mailing list