[dpdk-dev] [PATCH 1/2] net/i40e: enable VF untag drop
Ferruh Yigit
ferruh.yigit at intel.com
Thu Mar 23 18:00:04 CET 2017
On 3/14/2017 6:16 PM, Iremonger, Bernard wrote:
> Hi Ferruh, Qi,
>
> <snip>
>
>>>>> Subject: Re: [dpdk-dev] [PATCH 1/2] net/i40e: enable VF untag drop
>>>>>
>>>>> On 3/3/2017 1:59 AM, Qi Zhang wrote:
>>>>>> Add a new private API to support the untag drop enable/disable for
>>>>>> specific VF.
>>>>>>
>>>>>> Signed-off-by: Qi Zhang <qi.z.zhang at intel.com>
>>>>>> ---
>>>>>> drivers/net/i40e/i40e_ethdev.c | 49
>>>>>> +++++++++++++++++++++++++++++++++++++++++
>>>>>> drivers/net/i40e/rte_pmd_i40e.h | 18 +++++++++++++++
>>>>>
>>>>> Shared library is giving build error because of API is missing in
>>>>> *version.map file
>>>>>
>>>>>> 2 files changed, 67 insertions(+)
>>>>>>
>>>>>
>>>>> <...>
>>>>>
>>>>>> diff --git a/drivers/net/i40e/rte_pmd_i40e.h
>>>>>> b/drivers/net/i40e/rte_pmd_i40e.h index a0ad88c..895e2cc 100644
>>>>>> --- a/drivers/net/i40e/rte_pmd_i40e.h
>>>>>> +++ b/drivers/net/i40e/rte_pmd_i40e.h
>>>>>> @@ -332,4 +332,22 @@ int rte_pmd_i40e_get_vf_stats(uint8_t port,
>>>>>> int rte_pmd_i40e_reset_vf_stats(uint8_t port,
>>>>>> uint16_t vf_id);
>>>>>>
>>>>>> +/**
>>>>>> + * Enable/Disable VF untag drop
>>>>>> + *
>>>>>> + * @param port
>>>>>> + * The port identifier of the Ethernet device.
>>>>>> + * @param vf_id
>>>>>> + * VF on witch to enable/disable
>>>>>> + * @param on
>>>>>> + * Enable or Disable
>>>>>> + * @retura
>>>>>
>>>>> @return
>>>>>
>>>>>> + * - (0) if successful.
>>>>>> + * -(-ENODEVE) if *port* invalid
>>>>>> + * -(-EINVAL) if bad parameter.
>>>>>> + */
>>>>>> +int rte_pmd_i40e_set_vf_vlan_untag_drop(uint8_t port,
>>>>>> + uint16_t vf_id,
>>>>>> + uint8_t on);
>>>>>
>>>>> As discussed previously, I believe it is good to keep following
>>>>> syntax in
>>> API:
>>>>> <name_space>_<object>_<action>, for this API it becomes:
>>>> I think, current naming rule is <name_space>_<action>_<object> right?
>
> This seems to be the existing naming convention.
>
>>>
>>> Overall, I am not aware of any defined naming rule, I am for defining one.
>>>
>>>> See below
>>>> rte_pmd_i40e_set_vf_vlan_anti_spoof;
>>>> rte_pmd_i40e_set_vf_vlan_filter;
>>>> rte_pmd_i40e_set_vf_vlan_insert;
>>>> rte_pmd_i40e_set_vf_vlan_stripq;
>>>> rte_pmd_i40e_set_vf_vlan_tag; so what's wrong with this
>>>
>>> This breaks hierarchical approach, if you think API name as tree.
>>> Easier to see this when you sort the APIs, ns_set_x, ns_reset_x,
>>> ns_del_x will spread to different locations.
>> I agree with your point, I had thought your concern is only about this patch,
>> but actually it's not.
>>>
>>> This looks OK when you work on one type of object already, but with
>>> all APIs in concern, I believe object based grouping is better than
>>> action based grouping.
>>
>>>
>>> And why do you think above one is better? Again, as long as one is
>>> agreed on,
>> I don't, sorry for make you misunderstand
>
> I don't think changing the name convention at this point is a good idea.
I am not suggesting changing existing ones, for the sake compatibility.
But that can also be an option, since these are PMD specific API, I
expect usage will be limited and these does not carry as high standard
as library APIs.
> It would be better to remain consistent with the existing naming convention.
Existing i40e ones added this way to be compatible with existing ixgbe
ones. But I don't think we need to follow old usage with new APIs.
> Otherwise both naming conventions will exist for the rte_pmd_i40e_* API's.
It can be for a while, later all can be fixed. If you think proposed
convention is not better, that is something else.
>
>
>>>>> rte_pmd_i40e_vf_vlan_untag_drop_set(), and perhaps "set" can be
>>> removed?
>>>>>
>>>>>> +
>>>>>> #endif /* _PMD_I40E_H_ */
>>>>>>
>>>>
>
> Regards,
>
> Bernard.
>
More information about the dev
mailing list