mbox series

[v2,0/4] add trace points in ethdev library

Message ID 20220929102936.5490-1-adwivedi@marvell.com (mailing list archive)
Headers
Series add trace points in ethdev library |

Message

Ankur Dwivedi Sept. 29, 2022, 10:29 a.m. UTC
  This series adds trace points for functions in the ethdev library.
The trace points are added in ethdev, flow, mtr and tm files.

v2:
 - Made rte_eth_trace_call_rx_callbacks and rte_eth_trace_call_tx_callbacks
   as fastpath trace functions.
 - Moved some trace functions call to the end to capture return value and
   data.
 - Removed rte_eth_trace_tx_queue_setup as it is not required.
   rte_ethdev_trace_txq_setup() is already present in
   rte_eth_tx_queue_setup().
 - Removed trace in ethdev_driver.c
 - Removed trace function check patch.

Ankur Dwivedi (4):
  ethdev: add trace points
  ethdev: add trace points for flow
  ethdev: add trace points for mtr
  ethdev: add trace points for tm

 lib/ethdev/ethdev_private.c      |    3 +
 lib/ethdev/ethdev_trace_points.c |  699 ++++++++++
 lib/ethdev/rte_ethdev.c          |  148 +++
 lib/ethdev/rte_ethdev_trace.h    | 2062 ++++++++++++++++++++++++++++++
 lib/ethdev/rte_ethdev_trace_fp.h |   19 +
 lib/ethdev/rte_flow.c            |   54 +
 lib/ethdev/rte_mtr.c             |   27 +
 lib/ethdev/rte_tm.c              |   40 +
 lib/ethdev/version.map           |  232 ++++
 9 files changed, 3284 insertions(+)
  

Comments

Andrew Rybchenko Oct. 6, 2022, 7:10 a.m. UTC | #1
On 9/29/22 13:29, Ankur Dwivedi wrote:
> This series adds trace points for functions in the ethdev library.
> The trace points are added in ethdev, flow, mtr and tm files.
> 
> v2:
>   - Made rte_eth_trace_call_rx_callbacks and rte_eth_trace_call_tx_callbacks
>     as fastpath trace functions.
>   - Moved some trace functions call to the end to capture return value and
>     data.

Looking at the patch series I still see many-many places where
tracing happens on entry point. Intentional?

>   - Removed rte_eth_trace_tx_queue_setup as it is not required.
>     rte_ethdev_trace_txq_setup() is already present in
>     rte_eth_tx_queue_setup().
>   - Removed trace in ethdev_driver.c
>   - Removed trace function check patch.
> 
> Ankur Dwivedi (4):
>    ethdev: add trace points
>    ethdev: add trace points for flow
>    ethdev: add trace points for mtr
>    ethdev: add trace points for tm
> 
>   lib/ethdev/ethdev_private.c      |    3 +
>   lib/ethdev/ethdev_trace_points.c |  699 ++++++++++
>   lib/ethdev/rte_ethdev.c          |  148 +++
>   lib/ethdev/rte_ethdev_trace.h    | 2062 ++++++++++++++++++++++++++++++
>   lib/ethdev/rte_ethdev_trace_fp.h |   19 +
>   lib/ethdev/rte_flow.c            |   54 +
>   lib/ethdev/rte_mtr.c             |   27 +
>   lib/ethdev/rte_tm.c              |   40 +
>   lib/ethdev/version.map           |  232 ++++
>   9 files changed, 3284 insertions(+)
>
  
Ankur Dwivedi Oct. 6, 2022, 7:26 a.m. UTC | #2
Hi Andrew,

>-----Original Message-----
>From: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
>Sent: Thursday, October 6, 2022 12:40 PM
>To: Ankur Dwivedi <adwivedi@marvell.com>; dev@dpdk.org
>Cc: thomas@monjalon.net; mdr@ashroe.eu; orika@nvidia.com;
>ferruh.yigit@xilinx.com; chas3@att.com; humin29@huawei.com;
>linville@tuxdriver.com; ciara.loftus@intel.com; qi.z.zhang@intel.com;
>mw@semihalf.com; mk@semihalf.com; shaibran@amazon.com;
>evgenys@amazon.com; igorch@amazon.com; chandu@amd.com; Igor
>Russkikh <irusskikh@marvell.com>; shepard.siegel@atomicrules.com;
>ed.czeck@atomicrules.com; john.miller@atomicrules.com;
>ajit.khaparde@broadcom.com; somnath.kotur@broadcom.com; Jerin Jacob
>Kollanukkaran <jerinj@marvell.com>; Maciej Czekaj [C]
><mczekaj@marvell.com>; Shijith Thotton <sthotton@marvell.com>;
>Srisivasubramanian Srinivasan <srinivasan@marvell.com>; Harman Kalra
><hkalra@marvell.com>; rahul.lakkireddy@chelsio.com; johndale@cisco.com;
>hyonkim@cisco.com; liudongdong3@huawei.com;
>yisen.zhuang@huawei.com; xuanziyang2@huawei.com;
>cloud.wangxiaoyun@huawei.com; zhouguoyang@huawei.com;
>simei.su@intel.com; wenjun1.wu@intel.com; qiming.yang@intel.com;
>Yuying.Zhang@intel.com; beilei.xing@intel.com; xiao.w.wang@intel.com;
>jingjing.wu@intel.com; junfeng.guo@intel.com; rosen.xu@intel.com; Nithin
>Kumar Dabilpuram <ndabilpuram@marvell.com>; Kiran Kumar Kokkilagadda
><kirankumark@marvell.com>; Sunil Kumar Kori <skori@marvell.com>; Satha
>Koteswara Rao Kottidi <skoteshwar@marvell.com>; Liron Himi
><lironh@marvell.com>; zr@semihalf.com; Radha Chintakuntla
><radhac@marvell.com>; Veerasenareddy Burru <vburru@marvell.com>;
>Sathesh B Edara <sedara@marvell.com>; matan@nvidia.com;
>viacheslavo@nvidia.com; sthemmin@microsoft.com; longli@microsoft.com;
>spinler@cesnet.cz; chaoyong.he@corigine.com;
>niklas.soderlund@corigine.com; hemant.agrawal@nxp.com;
>sachin.saxena@oss.nxp.com; g.singh@nxp.com; apeksha.gupta@nxp.com;
>sachin.saxena@nxp.com; aboyer@pensando.io; Rasesh Mody
><rmody@marvell.com>; Shahed Shaikh <shshaikh@marvell.com>; Devendra
>Singh Rawat <dsinghrawat@marvell.com>; jiawenwu@trustnetic.com;
>jianwang@trustnetic.com; jbehrens@vmware.com;
>maxime.coquelin@redhat.com; chenbo.xia@intel.com;
>steven.webster@windriver.com; matt.peters@windriver.com;
>bruce.richardson@intel.com; mtetsuyah@gmail.com; grive@u256.net;
>jasvinder.singh@intel.com; cristian.dumitrescu@intel.com;
>jgrajcia@cisco.com
>Subject: [EXT] Re: [PATCH v2 0/4] add trace points in ethdev library
>
>External Email
>
>----------------------------------------------------------------------
>On 9/29/22 13:29, Ankur Dwivedi wrote:
>> This series adds trace points for functions in the ethdev library.
>> The trace points are added in ethdev, flow, mtr and tm files.
>>
>> v2:
>>   - Made rte_eth_trace_call_rx_callbacks and rte_eth_trace_call_tx_callbacks
>>     as fastpath trace functions.
>>   - Moved some trace functions call to the end to capture return value and
>>     data.
>
>Looking at the patch series I still see many-many places where tracing happens
>on entry point. Intentional?
Yes , because the return values are not there to be captured.
>
>>   - Removed rte_eth_trace_tx_queue_setup as it is not required.
>>     rte_ethdev_trace_txq_setup() is already present in
>>     rte_eth_tx_queue_setup().
>>   - Removed trace in ethdev_driver.c
>>   - Removed trace function check patch.
>>
>> Ankur Dwivedi (4):
>>    ethdev: add trace points
>>    ethdev: add trace points for flow
>>    ethdev: add trace points for mtr
>>    ethdev: add trace points for tm
>>
>>   lib/ethdev/ethdev_private.c      |    3 +
>>   lib/ethdev/ethdev_trace_points.c |  699 ++++++++++
>>   lib/ethdev/rte_ethdev.c          |  148 +++
>>   lib/ethdev/rte_ethdev_trace.h    | 2062
>++++++++++++++++++++++++++++++
>>   lib/ethdev/rte_ethdev_trace_fp.h |   19 +
>>   lib/ethdev/rte_flow.c            |   54 +
>>   lib/ethdev/rte_mtr.c             |   27 +
>>   lib/ethdev/rte_tm.c              |   40 +
>>   lib/ethdev/version.map           |  232 ++++
>>   9 files changed, 3284 insertions(+)
>>
  
Andrew Rybchenko Oct. 6, 2022, 7:28 a.m. UTC | #3
On 10/6/22 10:26, Ankur Dwivedi wrote:
> Hi Andrew,
> 
>> -----Original Message-----
>> From: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
>> Sent: Thursday, October 6, 2022 12:40 PM
>> To: Ankur Dwivedi <adwivedi@marvell.com>; dev@dpdk.org
>> Cc: thomas@monjalon.net; mdr@ashroe.eu; orika@nvidia.com;
>> ferruh.yigit@xilinx.com; chas3@att.com; humin29@huawei.com;
>> linville@tuxdriver.com; ciara.loftus@intel.com; qi.z.zhang@intel.com;
>> mw@semihalf.com; mk@semihalf.com; shaibran@amazon.com;
>> evgenys@amazon.com; igorch@amazon.com; chandu@amd.com; Igor
>> Russkikh <irusskikh@marvell.com>; shepard.siegel@atomicrules.com;
>> ed.czeck@atomicrules.com; john.miller@atomicrules.com;
>> ajit.khaparde@broadcom.com; somnath.kotur@broadcom.com; Jerin Jacob
>> Kollanukkaran <jerinj@marvell.com>; Maciej Czekaj [C]
>> <mczekaj@marvell.com>; Shijith Thotton <sthotton@marvell.com>;
>> Srisivasubramanian Srinivasan <srinivasan@marvell.com>; Harman Kalra
>> <hkalra@marvell.com>; rahul.lakkireddy@chelsio.com; johndale@cisco.com;
>> hyonkim@cisco.com; liudongdong3@huawei.com;
>> yisen.zhuang@huawei.com; xuanziyang2@huawei.com;
>> cloud.wangxiaoyun@huawei.com; zhouguoyang@huawei.com;
>> simei.su@intel.com; wenjun1.wu@intel.com; qiming.yang@intel.com;
>> Yuying.Zhang@intel.com; beilei.xing@intel.com; xiao.w.wang@intel.com;
>> jingjing.wu@intel.com; junfeng.guo@intel.com; rosen.xu@intel.com; Nithin
>> Kumar Dabilpuram <ndabilpuram@marvell.com>; Kiran Kumar Kokkilagadda
>> <kirankumark@marvell.com>; Sunil Kumar Kori <skori@marvell.com>; Satha
>> Koteswara Rao Kottidi <skoteshwar@marvell.com>; Liron Himi
>> <lironh@marvell.com>; zr@semihalf.com; Radha Chintakuntla
>> <radhac@marvell.com>; Veerasenareddy Burru <vburru@marvell.com>;
>> Sathesh B Edara <sedara@marvell.com>; matan@nvidia.com;
>> viacheslavo@nvidia.com; sthemmin@microsoft.com; longli@microsoft.com;
>> spinler@cesnet.cz; chaoyong.he@corigine.com;
>> niklas.soderlund@corigine.com; hemant.agrawal@nxp.com;
>> sachin.saxena@oss.nxp.com; g.singh@nxp.com; apeksha.gupta@nxp.com;
>> sachin.saxena@nxp.com; aboyer@pensando.io; Rasesh Mody
>> <rmody@marvell.com>; Shahed Shaikh <shshaikh@marvell.com>; Devendra
>> Singh Rawat <dsinghrawat@marvell.com>; jiawenwu@trustnetic.com;
>> jianwang@trustnetic.com; jbehrens@vmware.com;
>> maxime.coquelin@redhat.com; chenbo.xia@intel.com;
>> steven.webster@windriver.com; matt.peters@windriver.com;
>> bruce.richardson@intel.com; mtetsuyah@gmail.com; grive@u256.net;
>> jasvinder.singh@intel.com; cristian.dumitrescu@intel.com;
>> jgrajcia@cisco.com
>> Subject: [EXT] Re: [PATCH v2 0/4] add trace points in ethdev library
>>
>> External Email
>>
>> ----------------------------------------------------------------------
>> On 9/29/22 13:29, Ankur Dwivedi wrote:
>>> This series adds trace points for functions in the ethdev library.
>>> The trace points are added in ethdev, flow, mtr and tm files.
>>>
>>> v2:
>>>    - Made rte_eth_trace_call_rx_callbacks and rte_eth_trace_call_tx_callbacks
>>>      as fastpath trace functions.
>>>    - Moved some trace functions call to the end to capture return value and
>>>      data.
>>
>> Looking at the patch series I still see many-many places where tracing happens
>> on entry point. Intentional?
> Yes , because the return values are not there to be captured.

Isn't it the reason to move trace point to have return value
there and capture it?

>>
>>>    - Removed rte_eth_trace_tx_queue_setup as it is not required.
>>>      rte_ethdev_trace_txq_setup() is already present in
>>>      rte_eth_tx_queue_setup().
>>>    - Removed trace in ethdev_driver.c
>>>    - Removed trace function check patch.
>>>
>>> Ankur Dwivedi (4):
>>>     ethdev: add trace points
>>>     ethdev: add trace points for flow
>>>     ethdev: add trace points for mtr
>>>     ethdev: add trace points for tm
>>>
>>>    lib/ethdev/ethdev_private.c      |    3 +
>>>    lib/ethdev/ethdev_trace_points.c |  699 ++++++++++
>>>    lib/ethdev/rte_ethdev.c          |  148 +++
>>>    lib/ethdev/rte_ethdev_trace.h    | 2062
>> ++++++++++++++++++++++++++++++
>>>    lib/ethdev/rte_ethdev_trace_fp.h |   19 +
>>>    lib/ethdev/rte_flow.c            |   54 +
>>>    lib/ethdev/rte_mtr.c             |   27 +
>>>    lib/ethdev/rte_tm.c              |   40 +
>>>    lib/ethdev/version.map           |  232 ++++
>>>    9 files changed, 3284 insertions(+)
>>>
>
  
Ankur Dwivedi Oct. 6, 2022, 7:47 a.m. UTC | #4
>-----Original Message-----
>From: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
>Sent: Thursday, October 6, 2022 12:59 PM
>To: Ankur Dwivedi <adwivedi@marvell.com>; dev@dpdk.org
>Cc: thomas@monjalon.net; mdr@ashroe.eu; orika@nvidia.com;
>ferruh.yigit@xilinx.com; chas3@att.com; humin29@huawei.com;
>linville@tuxdriver.com; ciara.loftus@intel.com; qi.z.zhang@intel.com;
>mw@semihalf.com; mk@semihalf.com; shaibran@amazon.com;
>evgenys@amazon.com; igorch@amazon.com; chandu@amd.com; Igor
>Russkikh <irusskikh@marvell.com>; shepard.siegel@atomicrules.com;
>ed.czeck@atomicrules.com; john.miller@atomicrules.com;
>ajit.khaparde@broadcom.com; somnath.kotur@broadcom.com; Jerin Jacob
>Kollanukkaran <jerinj@marvell.com>; Maciej Czekaj [C]
><mczekaj@marvell.com>; Shijith Thotton <sthotton@marvell.com>;
>Srisivasubramanian Srinivasan <srinivasan@marvell.com>; Harman Kalra
><hkalra@marvell.com>; rahul.lakkireddy@chelsio.com; johndale@cisco.com;
>hyonkim@cisco.com; liudongdong3@huawei.com;
>yisen.zhuang@huawei.com; xuanziyang2@huawei.com;
>cloud.wangxiaoyun@huawei.com; zhouguoyang@huawei.com;
>simei.su@intel.com; wenjun1.wu@intel.com; qiming.yang@intel.com;
>Yuying.Zhang@intel.com; beilei.xing@intel.com; xiao.w.wang@intel.com;
>jingjing.wu@intel.com; junfeng.guo@intel.com; rosen.xu@intel.com; Nithin
>Kumar Dabilpuram <ndabilpuram@marvell.com>; Kiran Kumar Kokkilagadda
><kirankumark@marvell.com>; Sunil Kumar Kori <skori@marvell.com>; Satha
>Koteswara Rao Kottidi <skoteshwar@marvell.com>; Liron Himi
><lironh@marvell.com>; zr@semihalf.com; Radha Chintakuntla
><radhac@marvell.com>; Veerasenareddy Burru <vburru@marvell.com>;
>Sathesh B Edara <sedara@marvell.com>; matan@nvidia.com;
>viacheslavo@nvidia.com; sthemmin@microsoft.com; longli@microsoft.com;
>spinler@cesnet.cz; chaoyong.he@corigine.com;
>niklas.soderlund@corigine.com; hemant.agrawal@nxp.com;
>sachin.saxena@oss.nxp.com; g.singh@nxp.com; apeksha.gupta@nxp.com;
>sachin.saxena@nxp.com; aboyer@pensando.io; Rasesh Mody
><rmody@marvell.com>; Shahed Shaikh <shshaikh@marvell.com>; Devendra
>Singh Rawat <dsinghrawat@marvell.com>; jiawenwu@trustnetic.com;
>jianwang@trustnetic.com; jbehrens@vmware.com;
>maxime.coquelin@redhat.com; chenbo.xia@intel.com;
>steven.webster@windriver.com; matt.peters@windriver.com;
>bruce.richardson@intel.com; mtetsuyah@gmail.com; grive@u256.net;
>jasvinder.singh@intel.com; cristian.dumitrescu@intel.com;
>jgrajcia@cisco.com
>Subject: Re: [EXT] Re: [PATCH v2 0/4] add trace points in ethdev library
>
>On 10/6/22 10:26, Ankur Dwivedi wrote:
>> Hi Andrew,
>>
>>> -----Original Message-----
>>> From: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
>>> Sent: Thursday, October 6, 2022 12:40 PM
>>> To: Ankur Dwivedi <adwivedi@marvell.com>; dev@dpdk.org
>>> Cc: thomas@monjalon.net; mdr@ashroe.eu; orika@nvidia.com;
>>> ferruh.yigit@xilinx.com; chas3@att.com; humin29@huawei.com;
>>> linville@tuxdriver.com; ciara.loftus@intel.com; qi.z.zhang@intel.com;
>>> mw@semihalf.com; mk@semihalf.com; shaibran@amazon.com;
>>> evgenys@amazon.com; igorch@amazon.com; chandu@amd.com; Igor
>Russkikh
>>> <irusskikh@marvell.com>; shepard.siegel@atomicrules.com;
>>> ed.czeck@atomicrules.com; john.miller@atomicrules.com;
>>> ajit.khaparde@broadcom.com; somnath.kotur@broadcom.com; Jerin
>Jacob
>>> Kollanukkaran <jerinj@marvell.com>; Maciej Czekaj [C]
>>> <mczekaj@marvell.com>; Shijith Thotton <sthotton@marvell.com>;
>>> Srisivasubramanian Srinivasan <srinivasan@marvell.com>; Harman Kalra
>>> <hkalra@marvell.com>; rahul.lakkireddy@chelsio.com;
>>> johndale@cisco.com; hyonkim@cisco.com; liudongdong3@huawei.com;
>>> yisen.zhuang@huawei.com; xuanziyang2@huawei.com;
>>> cloud.wangxiaoyun@huawei.com; zhouguoyang@huawei.com;
>>> simei.su@intel.com; wenjun1.wu@intel.com; qiming.yang@intel.com;
>>> Yuying.Zhang@intel.com; beilei.xing@intel.com; xiao.w.wang@intel.com;
>>> jingjing.wu@intel.com; junfeng.guo@intel.com; rosen.xu@intel.com;
>>> Nithin Kumar Dabilpuram <ndabilpuram@marvell.com>; Kiran Kumar
>>> Kokkilagadda <kirankumark@marvell.com>; Sunil Kumar Kori
>>> <skori@marvell.com>; Satha Koteswara Rao Kottidi
>>> <skoteshwar@marvell.com>; Liron Himi <lironh@marvell.com>;
>>> zr@semihalf.com; Radha Chintakuntla <radhac@marvell.com>;
>>> Veerasenareddy Burru <vburru@marvell.com>; Sathesh B Edara
>>> <sedara@marvell.com>; matan@nvidia.com; viacheslavo@nvidia.com;
>>> sthemmin@microsoft.com; longli@microsoft.com; spinler@cesnet.cz;
>>> chaoyong.he@corigine.com; niklas.soderlund@corigine.com;
>>> hemant.agrawal@nxp.com; sachin.saxena@oss.nxp.com;
>g.singh@nxp.com;
>>> apeksha.gupta@nxp.com; sachin.saxena@nxp.com; aboyer@pensando.io;
>>> Rasesh Mody <rmody@marvell.com>; Shahed Shaikh
>>> <shshaikh@marvell.com>; Devendra Singh Rawat
>>> <dsinghrawat@marvell.com>; jiawenwu@trustnetic.com;
>>> jianwang@trustnetic.com; jbehrens@vmware.com;
>>> maxime.coquelin@redhat.com; chenbo.xia@intel.com;
>>> steven.webster@windriver.com; matt.peters@windriver.com;
>>> bruce.richardson@intel.com; mtetsuyah@gmail.com; grive@u256.net;
>>> jasvinder.singh@intel.com; cristian.dumitrescu@intel.com;
>>> jgrajcia@cisco.com
>>> Subject: [EXT] Re: [PATCH v2 0/4] add trace points in ethdev library
>>>
>>> External Email
>>>
>>> ---------------------------------------------------------------------
>>> - On 9/29/22 13:29, Ankur Dwivedi wrote:
>>>> This series adds trace points for functions in the ethdev library.
>>>> The trace points are added in ethdev, flow, mtr and tm files.
>>>>
>>>> v2:
>>>>    - Made rte_eth_trace_call_rx_callbacks and
>rte_eth_trace_call_tx_callbacks
>>>>      as fastpath trace functions.
>>>>    - Moved some trace functions call to the end to capture return value and
>>>>      data.
>>>
>>> Looking at the patch series I still see many-many places where
>>> tracing happens on entry point. Intentional?
>> Yes , because the return values are not there to be captured.
>
>Isn't it the reason to move trace point to have return value there and capture
>it?
[Ankur] For some function the return value was there to be captured. But for some functions the return values are not possible to get unless some more changes are made in code, like the rte_eth_rx_metadata_negotiate() you mentioned in earlier mail. I have not modified the existing code of library, just added trace to capture what can be captured.
>
>>>
>>>>    - Removed rte_eth_trace_tx_queue_setup as it is not required.
>>>>      rte_ethdev_trace_txq_setup() is already present in
>>>>      rte_eth_tx_queue_setup().
>>>>    - Removed trace in ethdev_driver.c
>>>>    - Removed trace function check patch.
>>>>
>>>> Ankur Dwivedi (4):
>>>>     ethdev: add trace points
>>>>     ethdev: add trace points for flow
>>>>     ethdev: add trace points for mtr
>>>>     ethdev: add trace points for tm
>>>>
>>>>    lib/ethdev/ethdev_private.c      |    3 +
>>>>    lib/ethdev/ethdev_trace_points.c |  699 ++++++++++
>>>>    lib/ethdev/rte_ethdev.c          |  148 +++
>>>>    lib/ethdev/rte_ethdev_trace.h    | 2062
>>> ++++++++++++++++++++++++++++++
>>>>    lib/ethdev/rte_ethdev_trace_fp.h |   19 +
>>>>    lib/ethdev/rte_flow.c            |   54 +
>>>>    lib/ethdev/rte_mtr.c             |   27 +
>>>>    lib/ethdev/rte_tm.c              |   40 +
>>>>    lib/ethdev/version.map           |  232 ++++
>>>>    9 files changed, 3284 insertions(+)
>>>>
>>
  
Ankur Dwivedi Oct. 6, 2022, 12:55 p.m. UTC | #5
Hi Andrew,

>-----Original Message-----
>From: Ankur Dwivedi
>Sent: Thursday, October 6, 2022 1:18 PM
>To: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>; dev@dpdk.org
>Cc: thomas@monjalon.net; mdr@ashroe.eu; orika@nvidia.com;
>ferruh.yigit@xilinx.com; chas3@att.com; humin29@huawei.com;
>linville@tuxdriver.com; ciara.loftus@intel.com; qi.z.zhang@intel.com;
>mw@semihalf.com; mk@semihalf.com; shaibran@amazon.com;
>evgenys@amazon.com; igorch@amazon.com; chandu@amd.com; Igor
>Russkikh <irusskikh@marvell.com>; shepard.siegel@atomicrules.com;
>ed.czeck@atomicrules.com; john.miller@atomicrules.com;
>ajit.khaparde@broadcom.com; somnath.kotur@broadcom.com; Jerin Jacob
>Kollanukkaran <jerinj@marvell.com>; Maciej Czekaj [C]
><mczekaj@marvell.com>; Shijith Thotton <sthotton@marvell.com>;
>Srisivasubramanian Srinivasan <srinivasan@marvell.com>; Harman Kalra
><hkalra@marvell.com>; rahul.lakkireddy@chelsio.com; johndale@cisco.com;
>hyonkim@cisco.com; liudongdong3@huawei.com;
>yisen.zhuang@huawei.com; xuanziyang2@huawei.com;
>cloud.wangxiaoyun@huawei.com; zhouguoyang@huawei.com;
>simei.su@intel.com; wenjun1.wu@intel.com; qiming.yang@intel.com;
>Yuying.Zhang@intel.com; beilei.xing@intel.com; xiao.w.wang@intel.com;
>jingjing.wu@intel.com; junfeng.guo@intel.com; rosen.xu@intel.com; Nithin
>Kumar Dabilpuram <ndabilpuram@marvell.com>; Kiran Kumar Kokkilagadda
><kirankumark@marvell.com>; Sunil Kumar Kori <skori@marvell.com>; Satha
>Koteswara Rao Kottidi <skoteshwar@marvell.com>; Liron Himi
><lironh@marvell.com>; zr@semihalf.com; Radha Chintakuntla
><radhac@marvell.com>; Veerasenareddy Burru <vburru@marvell.com>;
>Sathesh B Edara <sedara@marvell.com>; matan@nvidia.com;
>viacheslavo@nvidia.com; sthemmin@microsoft.com; longli@microsoft.com;
>spinler@cesnet.cz; chaoyong.he@corigine.com;
>niklas.soderlund@corigine.com; hemant.agrawal@nxp.com;
>sachin.saxena@oss.nxp.com; g.singh@nxp.com; apeksha.gupta@nxp.com;
>sachin.saxena@nxp.com; aboyer@pensando.io; Rasesh Mody
><rmody@marvell.com>; Shahed Shaikh <shshaikh@marvell.com>; Devendra
>Singh Rawat <dsinghrawat@marvell.com>; jiawenwu@trustnetic.com;
>jianwang@trustnetic.com; jbehrens@vmware.com;
>maxime.coquelin@redhat.com; chenbo.xia@intel.com;
>steven.webster@windriver.com; matt.peters@windriver.com;
>bruce.richardson@intel.com; mtetsuyah@gmail.com; grive@u256.net;
>jasvinder.singh@intel.com; cristian.dumitrescu@intel.com;
>jgrajcia@cisco.com
>Subject: RE: [EXT] Re: [PATCH v2 0/4] add trace points in ethdev library
>
>
>
>>-----Original Message-----
>>From: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
>>Sent: Thursday, October 6, 2022 12:59 PM
>>To: Ankur Dwivedi <adwivedi@marvell.com>; dev@dpdk.org
>>Cc: thomas@monjalon.net; mdr@ashroe.eu; orika@nvidia.com;
>>ferruh.yigit@xilinx.com; chas3@att.com; humin29@huawei.com;
>>linville@tuxdriver.com; ciara.loftus@intel.com; qi.z.zhang@intel.com;
>>mw@semihalf.com; mk@semihalf.com; shaibran@amazon.com;
>>evgenys@amazon.com; igorch@amazon.com; chandu@amd.com; Igor
>Russkikh
>><irusskikh@marvell.com>; shepard.siegel@atomicrules.com;
>>ed.czeck@atomicrules.com; john.miller@atomicrules.com;
>>ajit.khaparde@broadcom.com; somnath.kotur@broadcom.com; Jerin Jacob
>>Kollanukkaran <jerinj@marvell.com>; Maciej Czekaj [C]
>><mczekaj@marvell.com>; Shijith Thotton <sthotton@marvell.com>;
>>Srisivasubramanian Srinivasan <srinivasan@marvell.com>; Harman Kalra
>><hkalra@marvell.com>; rahul.lakkireddy@chelsio.com;
>johndale@cisco.com;
>>hyonkim@cisco.com; liudongdong3@huawei.com;
>yisen.zhuang@huawei.com;
>>xuanziyang2@huawei.com; cloud.wangxiaoyun@huawei.com;
>>zhouguoyang@huawei.com; simei.su@intel.com; wenjun1.wu@intel.com;
>>qiming.yang@intel.com; Yuying.Zhang@intel.com; beilei.xing@intel.com;
>>xiao.w.wang@intel.com; jingjing.wu@intel.com; junfeng.guo@intel.com;
>>rosen.xu@intel.com; Nithin Kumar Dabilpuram
><ndabilpuram@marvell.com>;
>>Kiran Kumar Kokkilagadda <kirankumark@marvell.com>; Sunil Kumar Kori
>><skori@marvell.com>; Satha Koteswara Rao Kottidi
>><skoteshwar@marvell.com>; Liron Himi <lironh@marvell.com>;
>>zr@semihalf.com; Radha Chintakuntla <radhac@marvell.com>;
>>Veerasenareddy Burru <vburru@marvell.com>; Sathesh B Edara
>><sedara@marvell.com>; matan@nvidia.com; viacheslavo@nvidia.com;
>>sthemmin@microsoft.com; longli@microsoft.com; spinler@cesnet.cz;
>>chaoyong.he@corigine.com; niklas.soderlund@corigine.com;
>>hemant.agrawal@nxp.com; sachin.saxena@oss.nxp.com; g.singh@nxp.com;
>>apeksha.gupta@nxp.com; sachin.saxena@nxp.com; aboyer@pensando.io;
>>Rasesh Mody <rmody@marvell.com>; Shahed Shaikh
><shshaikh@marvell.com>;
>>Devendra Singh Rawat <dsinghrawat@marvell.com>;
>>jiawenwu@trustnetic.com; jianwang@trustnetic.com;
>jbehrens@vmware.com;
>>maxime.coquelin@redhat.com; chenbo.xia@intel.com;
>>steven.webster@windriver.com; matt.peters@windriver.com;
>>bruce.richardson@intel.com; mtetsuyah@gmail.com; grive@u256.net;
>>jasvinder.singh@intel.com; cristian.dumitrescu@intel.com;
>>jgrajcia@cisco.com
>>Subject: Re: [EXT] Re: [PATCH v2 0/4] add trace points in ethdev
>>library
>>
>>On 10/6/22 10:26, Ankur Dwivedi wrote:
>>> Hi Andrew,
>>>
>>>> -----Original Message-----
>>>> From: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
>>>> Sent: Thursday, October 6, 2022 12:40 PM
>>>> To: Ankur Dwivedi <adwivedi@marvell.com>; dev@dpdk.org
>>>> Cc: thomas@monjalon.net; mdr@ashroe.eu; orika@nvidia.com;
>>>> ferruh.yigit@xilinx.com; chas3@att.com; humin29@huawei.com;
>>>> linville@tuxdriver.com; ciara.loftus@intel.com;
>>>> qi.z.zhang@intel.com; mw@semihalf.com; mk@semihalf.com;
>>>> shaibran@amazon.com; evgenys@amazon.com; igorch@amazon.com;
>>>> chandu@amd.com; Igor
>>Russkikh
>>>> <irusskikh@marvell.com>; shepard.siegel@atomicrules.com;
>>>> ed.czeck@atomicrules.com; john.miller@atomicrules.com;
>>>> ajit.khaparde@broadcom.com; somnath.kotur@broadcom.com; Jerin
>>Jacob
>>>> Kollanukkaran <jerinj@marvell.com>; Maciej Czekaj [C]
>>>> <mczekaj@marvell.com>; Shijith Thotton <sthotton@marvell.com>;
>>>> Srisivasubramanian Srinivasan <srinivasan@marvell.com>; Harman Kalra
>>>> <hkalra@marvell.com>; rahul.lakkireddy@chelsio.com;
>>>> johndale@cisco.com; hyonkim@cisco.com; liudongdong3@huawei.com;
>>>> yisen.zhuang@huawei.com; xuanziyang2@huawei.com;
>>>> cloud.wangxiaoyun@huawei.com; zhouguoyang@huawei.com;
>>>> simei.su@intel.com; wenjun1.wu@intel.com; qiming.yang@intel.com;
>>>> Yuying.Zhang@intel.com; beilei.xing@intel.com;
>>>> xiao.w.wang@intel.com; jingjing.wu@intel.com; junfeng.guo@intel.com;
>>>> rosen.xu@intel.com; Nithin Kumar Dabilpuram
>>>> <ndabilpuram@marvell.com>; Kiran Kumar Kokkilagadda
>>>> <kirankumark@marvell.com>; Sunil Kumar Kori <skori@marvell.com>;
>>>> Satha Koteswara Rao Kottidi <skoteshwar@marvell.com>; Liron Himi
>>>> <lironh@marvell.com>; zr@semihalf.com; Radha Chintakuntla
>>>> <radhac@marvell.com>; Veerasenareddy Burru <vburru@marvell.com>;
>>>> Sathesh B Edara <sedara@marvell.com>; matan@nvidia.com;
>>>> viacheslavo@nvidia.com; sthemmin@microsoft.com;
>>>> longli@microsoft.com; spinler@cesnet.cz; chaoyong.he@corigine.com;
>>>> niklas.soderlund@corigine.com; hemant.agrawal@nxp.com;
>>>> sachin.saxena@oss.nxp.com;
>>g.singh@nxp.com;
>>>> apeksha.gupta@nxp.com; sachin.saxena@nxp.com;
>aboyer@pensando.io;
>>>> Rasesh Mody <rmody@marvell.com>; Shahed Shaikh
>>>> <shshaikh@marvell.com>; Devendra Singh Rawat
>>>> <dsinghrawat@marvell.com>; jiawenwu@trustnetic.com;
>>>> jianwang@trustnetic.com; jbehrens@vmware.com;
>>>> maxime.coquelin@redhat.com; chenbo.xia@intel.com;
>>>> steven.webster@windriver.com; matt.peters@windriver.com;
>>>> bruce.richardson@intel.com; mtetsuyah@gmail.com; grive@u256.net;
>>>> jasvinder.singh@intel.com; cristian.dumitrescu@intel.com;
>>>> jgrajcia@cisco.com
>>>> Subject: [EXT] Re: [PATCH v2 0/4] add trace points in ethdev library
>>>>
>>>> External Email
>>>>
>>>> --------------------------------------------------------------------
>>>> -
>>>> - On 9/29/22 13:29, Ankur Dwivedi wrote:
>>>>> This series adds trace points for functions in the ethdev library.
>>>>> The trace points are added in ethdev, flow, mtr and tm files.
>>>>>
>>>>> v2:
>>>>>    - Made rte_eth_trace_call_rx_callbacks and
>>rte_eth_trace_call_tx_callbacks
>>>>>      as fastpath trace functions.
>>>>>    - Moved some trace functions call to the end to capture return value
>and
>>>>>      data.
>>>>
>>>> Looking at the patch series I still see many-many places where
>>>> tracing happens on entry point. Intentional?
>>> Yes , because the return values are not there to be captured.
>>
>>Isn't it the reason to move trace point to have return value there and
>>capture it?
>[Ankur] For some function the return value was there to be captured. But for
>some functions the return values are not possible to get unless some more
>changes are made in code, like the rte_eth_rx_metadata_negotiate() you
>mentioned in earlier mail. I have not modified the existing code of library, just
>added trace to capture what can be captured.
[Ankur] Identified few more functions for which trace can be shift towards the end of a function. Will send the changes in v3.
>>
>>>>
>>>>>    - Removed rte_eth_trace_tx_queue_setup as it is not required.
>>>>>      rte_ethdev_trace_txq_setup() is already present in
>>>>>      rte_eth_tx_queue_setup().
>>>>>    - Removed trace in ethdev_driver.c
>>>>>    - Removed trace function check patch.
>>>>>
>>>>> Ankur Dwivedi (4):
>>>>>     ethdev: add trace points
>>>>>     ethdev: add trace points for flow
>>>>>     ethdev: add trace points for mtr
>>>>>     ethdev: add trace points for tm
>>>>>
>>>>>    lib/ethdev/ethdev_private.c      |    3 +
>>>>>    lib/ethdev/ethdev_trace_points.c |  699 ++++++++++
>>>>>    lib/ethdev/rte_ethdev.c          |  148 +++
>>>>>    lib/ethdev/rte_ethdev_trace.h    | 2062
>>>> ++++++++++++++++++++++++++++++
>>>>>    lib/ethdev/rte_ethdev_trace_fp.h |   19 +
>>>>>    lib/ethdev/rte_flow.c            |   54 +
>>>>>    lib/ethdev/rte_mtr.c             |   27 +
>>>>>    lib/ethdev/rte_tm.c              |   40 +
>>>>>    lib/ethdev/version.map           |  232 ++++
>>>>>    9 files changed, 3284 insertions(+)
>>>>>
>>>