[dpdk-dev] [PATCH v1 0/4] get Rx/Tx packet burst mode information

Ferruh Yigit ferruh.yigit at intel.com
Thu Sep 26 19:36:12 CEST 2019


On 9/26/2019 6:15 PM, Stephen Hemminger wrote:
> On Thu, 26 Sep 2019 16:36:09 +0000
> "Wang, Haiyue" <haiyue.wang at intel.com> wrote:
> 
>> Hi Stephen,
>>
>>> -----Original Message-----
>>> From: Stephen Hemminger [mailto:stephen at networkplumber.org]
>>> Sent: Thursday, September 26, 2019 23:57
>>> To: Wang, Haiyue <haiyue.wang at intel.com>
>>> Cc: dev at dpdk.org; Yigit, Ferruh <ferruh.yigit at intel.com>; Ye, Xiaolong <xiaolong.ye at intel.com>;
>>> Kinsella, Ray <ray.kinsella at intel.com>; Iremonger, Bernard <bernard.iremonger at intel.com>; Sun, Chenmin
>>> <chenmin.sun at intel.com>
>>> Subject: Re: [dpdk-dev] [PATCH v1 0/4] get Rx/Tx packet burst mode information
>>>
>>> On Thu, 26 Sep 2019 19:48:14 +0800
>>> Haiyue Wang <haiyue.wang at intel.com> wrote:
>>>   
>>>> RFCv3 -> v1:
>>>> 	https://patchwork.dpdk.org/patch/59103/
>>>> 	https://patchwork.dpdk.org/patch/59104/
>>>> 	https://patchwork.dpdk.org/patch/59105/
>>>> 	https://patchwork.dpdk.org/patch/59106/
>>>> 	1). Use the function 'rte_bsf64' to iterate the options for
>>>> 	    getting the name.
>>>>
>>>> Haiyue Wang (4):
>>>>   ethdev: add the API for getting burst mode information
>>>>   net/i40e: support to get the Rx/Tx burst mode
>>>>   net/ice: support to get the Rx/Tx burst mode
>>>>   app/testpmd: show the Rx/Tx burst mode description
>>>>
>>>>  app/test-pmd/config.c                    | 29 +++++++++
>>>>  doc/guides/rel_notes/release_19_11.rst   |  9 +++
>>>>  drivers/net/i40e/i40e_ethdev.c           |  2 +
>>>>  drivers/net/i40e/i40e_ethdev.h           |  4 ++
>>>>  drivers/net/i40e/i40e_rxtx.c             | 72 +++++++++++++++++++++
>>>>  drivers/net/ice/ice_ethdev.c             |  2 +
>>>>  drivers/net/ice/ice_rxtx.c               | 54 ++++++++++++++++
>>>>  drivers/net/ice/ice_rxtx.h               |  4 ++
>>>>  lib/librte_ethdev/rte_ethdev.c           | 75 ++++++++++++++++++++++
>>>>  lib/librte_ethdev/rte_ethdev.h           | 82 ++++++++++++++++++++++++
>>>>  lib/librte_ethdev/rte_ethdev_core.h      |  5 ++
>>>>  lib/librte_ethdev/rte_ethdev_version.map |  5 ++
>>>>  12 files changed, 343 insertions(+)
>>>>  
>>>
>>> A couple of meta comments:
>>> 1) Could this be part of dev_info_get somehow?
>>>   
>>
>> https://patchwork.dpdk.org/patch/57624/
>> 'Think of a better way that doesn't break ABI.'  ;-)
> 
> That comment was made relative to 19.08, but 19.11 is the time where
> API/ABI breakage is allowed.

'rte_eth_dev_info_get()' is already a little messy, yes this can be part of it
but I think separate, smaller, better defined APIs are better.
Also almost everybody interested in 'rte_eth_dev_info_get()', but not sure
everyone will be interested in this info.

>  
>>> 2) Why should application care? Is this just a test hook?  
>>
>> https://patches.dpdk.org/cover/57623/
>> This is from FD.io VPP's bug, and finally, we come out
>> this API for application accessing the burst mode information.
>> It can be used as a simple trace or something like performance
>> analysis like why slow ? Not in vector, anyway, application can
>> get this burst mode information now, not just open PMD debug log
>> level.
> 
> From an architecture perspective, diagnostics are good but VPP is probably
> taking that too far.  It is possible to expose local symbols if they
> want to keep using dlsym() by adjusting linker flags. It is more that VPP
> is stripping everything.  Since VPP has chosen to go their own
> way is fixable inside VPP without changing DPDK. Also, long term VPP is
> going away from using DPDK drivers. Probably soon they will have their
> own drivers for i40e and ice anyway.
> 
> 
> The basis of my concern is that this is one of those kind of API's
> that creates long term technical debt around supporting it as other
> things change.
> 



More information about the dev mailing list