On 11/2/19 1:25 AM, Thomas Monjalon wrote:
> 01/11/2019 11:55, Andrew Rybchenko:
>> On 10/31/19 7:38 PM, Pavan Nikhilesh Bhagavatula wrote:
>>>> 29/10/2019 16:37, pbhagavat...@marvell.com:
>>>>> From: Pavan Nikhilesh <pbhagavat...@marvell.com>
>>>>>  Removed Items
>>>>>  -------------
>>>>> --- a/lib/librte_ethdev/rte_ethdev.h
>>>>> +++ b/lib/librte_ethdev/rte_ethdev.h
>>>>> +/**
>>>>> + * @warning
>>>>> + * @b EXPERIMENTAL: this API may change without prior notice.
>>>>> + *
>>>>> + * Inform Ethernet device of the packet types classification the
>>>> recipient is
>>>>> + * interested in.
>>>> This is a bit convoluted.
>>>> What about this?
>>>> "Optimize driver handling of packet types by reducing its range."
>>> @arybche...@solarflare.com Thoughts?
>> Optimize is a possible side effect of the operation, but there is
>> no any promise that something will be optimized.
>> I thought that current description explains what happens.
>> Below statements try to explain why it may be useful.
>> Any other options?
> "Reduce range of packet types to handle."

OK

>>>>> + * Application can use this function to set only specific ptypes that 
>>>>> it's
>>>>> + * interested. This information can be used by the PMD to optimize
>>>> Rx path.
>>>>> + *
>>>>> + * The function accepts an array `set_ptypes` allocated by the caller
>>>> to
>>>>> + * store the packet types set by the driver, the last element of the
>>>> array
>>>>> + * is set to RTE_PTYPE_UNKNOWN. The size of the `set_ptype` array
>>>> should be
>>>>> + * `rte_eth_dev_get_supported_ptypes() + 1` else it might only be
>>>> filled
>>>>> + * partially.
>>>>> + *
>>>>> + * @param port_id
>>>>> + *   The port identifier of the Ethernet device.
>>>>> + * @param ptype_mask
>>>>> + *   The ptype family that application is interested in should be
>>>> bitwise OR of
>>>>> + *   RTE_PTYPE_*_MASK or 0.
>>>>> + * @param set_ptypes
>>>>> + *   An array pointer to store set packet types, allocated by caller. The
>>>>> + *   function marks the end of array with RTE_PTYPE_UNKNOWN.
>>>>> + * @param num
>>>>> + *   Size of the array pointed by param ptypes.
>>>>> + *   Should be rte_eth_dev_get_supported_ptypes() + 1 to
>>>> accommodate the
>>>>> + *   set ptypes.
>>>>> + * @return
>>>>> + *   - (0) if Success.
>>>>> + *   - (-ENODEV) if *port_id* invalid.
>>>>> + *   - (-EINVAL) if *ptype_mask* is invalid (or) set_ptypes is NULL and
>>>>> + *     num > 0.
>>>>> + */
>>>> John, please you check the English wording?
>>>>
>>>>> +__rte_experimental
>>>>> +int rte_eth_dev_set_supported_ptypes(uint16_t port_id, uint32_t
>>>> ptype_mask,
>>>>> +                              uint32_t *set_ptypes, unsigned int
>>>> num);
>>>>
>>>> I don't like the name of the function because they are
>>>> not "supported" packet types but "requested".
>>>> What about replacing "set_supported" with "set_allowed", or
>>>> "white_list"?
>>> "white_list" seems ok but hope it doesn't call for blacklisting API.
>> "white_list" suggests that it is guaranteed that nothing else will
>> be reported. At least for me. However, I agree that set_supported
>> is not nice and I accepted it just to keep API naming symmetric.
>> May be it is really misleading here. May be just: rte_eth_dev_set_ptypes()?
> Maybe the word "allowed" would better fit?

allowed could be treated as everything else is disallowed. So, I'm not sure.

Reply via email to