Message ID | 20230112112140.807233-1-adwivedi@marvell.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 4D050423B5; Thu, 12 Jan 2023 12:24:49 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 314ED42D22; Thu, 12 Jan 2023 12:24:49 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by mails.dpdk.org (Postfix) with ESMTP id 3559640E25 for <dev@dpdk.org>; Thu, 12 Jan 2023 12:24:47 +0100 (CET) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 30C9dqIm021082; Thu, 12 Jan 2023 03:22:13 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=pfpt0220; bh=bnhNQANkgN8raz0qVBBwFDzaZScAuM3LlgjdQ//wick=; b=Cn45jVj0d4hA68RbWZOyM58XVKBLZySzDVugL6tEGGIvJQ579uWmlbHWUTMdZesIEi3F vKIT7HjGgiaESHfZr0j7Xc6DR7L/z1uXtPcj4lZgopdpKJO/SlIwwuq9IfKOba/K+lVd S5MCn26hNYLABlwKLG03hYlv+Y2LavfDL5iHPRuSORj6EOvX9gzFbjRegm5St1S7OSGe j66J/dAe74HmXR94F8tiJDBbB0K1DrX5mTR/t0Ke5rRGxkeFtAJK643NJb4xYFfWEOqN /zJ7GdGDAYIsjVr/uG+Cg72AWPWATiLjls2Vj8q8hON9zViUifc21mzH5gpgPxi/+hlH 4w== Received: from dc5-exch02.marvell.com ([199.233.59.182]) by mx0b-0016f401.pphosted.com (PPS) with ESMTPS id 3n1k56ysjv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Thu, 12 Jan 2023 03:22:12 -0800 Received: from DC5-EXCH01.marvell.com (10.69.176.38) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server (TLS) id 15.0.1497.42; Thu, 12 Jan 2023 03:22:10 -0800 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server id 15.0.1497.42 via Frontend Transport; Thu, 12 Jan 2023 03:22:10 -0800 Received: from localhost.localdomain (unknown [10.28.36.185]) by maili.marvell.com (Postfix) with ESMTP id 719CD5B6923; Thu, 12 Jan 2023 03:21:49 -0800 (PST) From: Ankur Dwivedi <adwivedi@marvell.com> To: <dev@dpdk.org> CC: <thomas@monjalon.net>, <david.marchand@redhat.com>, <mdr@ashroe.eu>, <orika@nvidia.com>, <ferruh.yigit@amd.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>, <irusskikh@marvell.com>, <shepard.siegel@atomicrules.com>, <ed.czeck@atomicrules.com>, <john.miller@atomicrules.com>, <ajit.khaparde@broadcom.com>, <somnath.kotur@broadcom.com>, <jerinj@marvell.com>, <mczekaj@marvell.com>, <sthotton@marvell.com>, <srinivasan@marvell.com>, <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>, <ndabilpuram@marvell.com>, <kirankumark@marvell.com>, <skori@marvell.com>, <skoteshwar@marvell.com>, <lironh@marvell.com>, <zr@semihalf.com>, <radhac@marvell.com>, <vburru@marvell.com>, <sedara@marvell.com>, <matan@nvidia.com>, <viacheslavo@nvidia.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>, <rmody@marvell.com>, <shshaikh@marvell.com>, <dsinghrawat@marvell.com>, <andrew.rybchenko@oktetlabs.ru>, <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>, <mb@smartsharesystems.com>, Ankur Dwivedi <adwivedi@marvell.com> Subject: [PATCH v5 0/6] add trace points in ethdev library Date: Thu, 12 Jan 2023 16:51:34 +0530 Message-ID: <20230112112140.807233-1-adwivedi@marvell.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221222063306.3383695-1-adwivedi@marvell.com> References: <20221222063306.3383695-1-adwivedi@marvell.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-ORIG-GUID: wWkHEBkAf6APnQ8JpeJHXkNwmNdx3kt3 X-Proofpoint-GUID: wWkHEBkAf6APnQ8JpeJHXkNwmNdx3kt3 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.219,Aquarius:18.0.923,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2023-01-12_07,2023-01-12_01,2022-06-22_01 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org |
Series |
add trace points in ethdev library
|
|
Message
Ankur Dwivedi
Jan. 12, 2023, 11:21 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. v5: - The rte_trace_point_emit_char_array function is renamed to rte_trace_point_emit_blob. With this function an array of any length upto 65535 bytes can be captured. For example, the following is the ctf metadata created to display a mac addr array in rte_eth_trace_macaddr_get(): struct { ... uint16_t len; uint8_t mac_addr_addr_bytes[len]; }; - Added additional test cases for rte_eal_trace_generic_blob test case. - Capturing of return value of a function is added to tracepoint for flow, mtr and tm patches. - In ehdev patch (1/6), removed extra line. Also added rx_pkts and tx_pkts pointer in trace point. v4: - Adds tracepoint function to emit char array. Also adds the test case. - Resolved review comments on "ethdev: add trace point" patch. This patch is divided into 2 patches to minimize per patch size. - From the earlier version (v3), few tracepoints in ethdev, flow, mtr, tm are made as fast path tracepoints. For the tracepoint which i was unsure, i have made it as fastpath. All the fast path tracepoints can be found in rte_ethdev_trace_fp.h and rte_ethdev_trace_fp_burst.h. All the slow path tracepoints can be found in rte_ethdev_trace.h. - Capturing of return value is added to tracepoint in ethdev. For flow, mtr and tm these changes are still yet to bde done. Will do it in the next versions. - Moved the trace functions from INTERNAL to EXPERIMENTAL in version.map. v3: - Moved the trace functions from EXPERIMENTAL to INTERNAL in version.map. - Moved trace functions call to the end, in ethdev and flow trace. - Added code to print the input value of features in rte_eth_trace_rx_metadata_negotiate(). - Added code to capture return value in flow trace. Ankur Dwivedi (6): eal: trace: add trace point emit for blob ethdev: add trace points for ethdev ethdev: add trace points for remaining functions ethdev: add trace points for flow ethdev: add trace points for mtr ethdev: add trace points for tm app/test/test_trace.c | 5 + lib/eal/common/eal_common_trace_points.c | 2 + lib/eal/include/rte_eal_trace.h | 6 + lib/eal/include/rte_trace_point.h | 17 + lib/eal/include/rte_trace_point_register.h | 7 + lib/eal/version.map | 3 + lib/ethdev/ethdev_private.c | 5 + lib/ethdev/ethdev_trace_points.c | 715 ++++++++++ lib/ethdev/meson.build | 1 + lib/ethdev/rte_ethdev.c | 711 ++++++++-- lib/ethdev/rte_ethdev.h | 2 +- lib/ethdev/rte_ethdev_cman.c | 30 +- lib/ethdev/rte_ethdev_trace.h | 1450 ++++++++++++++++++++ lib/ethdev/rte_ethdev_trace_fp.h | 1005 +++++++++++++- lib/ethdev/rte_ethdev_trace_fp_burst.h | 44 + lib/ethdev/rte_flow.c | 314 ++++- lib/ethdev/rte_mtr.c | 156 ++- lib/ethdev/rte_tm.c | 247 +++- lib/ethdev/version.map | 235 ++++ 19 files changed, 4719 insertions(+), 236 deletions(-) create mode 100644 lib/ethdev/rte_ethdev_trace_fp_burst.h
Comments
On 1/12/2023 11:21 AM, 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. > > v5: > - The rte_trace_point_emit_char_array function is renamed to > rte_trace_point_emit_blob. With this function an array of > any length upto 65535 bytes can be captured. > For example, the following is the ctf metadata created to display > a mac addr array in rte_eth_trace_macaddr_get(): > struct { > ... > uint16_t len; > uint8_t mac_addr_addr_bytes[len]; > }; > - Added additional test cases for rte_eal_trace_generic_blob > test case. > - Capturing of return value of a function is added to tracepoint > for flow, mtr and tm patches. > - In ehdev patch (1/6), removed extra line. Also added rx_pkts and > tx_pkts pointer in trace point. > > v4: > - Adds tracepoint function to emit char array. Also adds the > test case. > - Resolved review comments on "ethdev: add trace point" patch. > This patch is divided into 2 patches to minimize per patch > size. > - From the earlier version (v3), few tracepoints in ethdev, > flow, mtr, tm are made as fast path tracepoints. For the > tracepoint which i was unsure, i have made it as fastpath. > All the fast path tracepoints can be found in > rte_ethdev_trace_fp.h and rte_ethdev_trace_fp_burst.h. > All the slow path tracepoints can be found in rte_ethdev_trace.h. > - Capturing of return value is added to tracepoint in ethdev. > For flow, mtr and tm these changes are still yet to bde done. > Will do it in the next versions. > - Moved the trace functions from INTERNAL to EXPERIMENTAL in > version.map. > > v3: > - Moved the trace functions from EXPERIMENTAL to INTERNAL in > version.map. > - Moved trace functions call to the end, in ethdev and flow trace. > - Added code to print the input value of features in > rte_eth_trace_rx_metadata_negotiate(). > - Added code to capture return value in flow trace. > > Ankur Dwivedi (6): > eal: trace: add trace point emit for blob > ethdev: add trace points for ethdev > ethdev: add trace points for remaining functions > ethdev: add trace points for flow > ethdev: add trace points for mtr > ethdev: add trace points for tm Hi Ankur, Build seems failing with set, can you please check: https://mails.dpdk.org/archives/test-report/2023-January/339696.html I can reproduce build failures via 32bit and debugoptimized builds.
Hi Ferruh, My comments are inline. >-----Original Message----- >From: Ferruh Yigit <ferruh.yigit@amd.com> >Sent: Thursday, January 12, 2023 10:33 PM >To: Ankur Dwivedi <adwivedi@marvell.com>; dev@dpdk.org >Cc: thomas@monjalon.net; david.marchand@redhat.com; mdr@ashroe.eu; >orika@nvidia.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; >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>; andrew.rybchenko@oktetlabs.ru; >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; >mb@smartsharesystems.com >Subject: [EXT] Re: [PATCH v5 0/6] add trace points in ethdev library > >External Email > >---------------------------------------------------------------------- >On 1/12/2023 11:21 AM, 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. >> >> v5: >> - The rte_trace_point_emit_char_array function is renamed to >> rte_trace_point_emit_blob. With this function an array of >> any length upto 65535 bytes can be captured. >> For example, the following is the ctf metadata created to display >> a mac addr array in rte_eth_trace_macaddr_get(): >> struct { >> ... >> uint16_t len; >> uint8_t mac_addr_addr_bytes[len]; >> }; >> - Added additional test cases for rte_eal_trace_generic_blob >> test case. >> - Capturing of return value of a function is added to tracepoint >> for flow, mtr and tm patches. >> - In ehdev patch (1/6), removed extra line. Also added rx_pkts and >> tx_pkts pointer in trace point. >> >> v4: >> - Adds tracepoint function to emit char array. Also adds the >> test case. >> - Resolved review comments on "ethdev: add trace point" patch. >> This patch is divided into 2 patches to minimize per patch >> size. >> - From the earlier version (v3), few tracepoints in ethdev, >> flow, mtr, tm are made as fast path tracepoints. For the >> tracepoint which i was unsure, i have made it as fastpath. >> All the fast path tracepoints can be found in >> rte_ethdev_trace_fp.h and rte_ethdev_trace_fp_burst.h. >> All the slow path tracepoints can be found in rte_ethdev_trace.h. >> - Capturing of return value is added to tracepoint in ethdev. >> For flow, mtr and tm these changes are still yet to bde done. >> Will do it in the next versions. >> - Moved the trace functions from INTERNAL to EXPERIMENTAL in >> version.map. >> >> v3: >> - Moved the trace functions from EXPERIMENTAL to INTERNAL in >> version.map. >> - Moved trace functions call to the end, in ethdev and flow trace. >> - Added code to print the input value of features in >> rte_eth_trace_rx_metadata_negotiate(). >> - Added code to capture return value in flow trace. >> >> Ankur Dwivedi (6): >> eal: trace: add trace point emit for blob >> ethdev: add trace points for ethdev >> ethdev: add trace points for remaining functions >> ethdev: add trace points for flow >> ethdev: add trace points for mtr >> ethdev: add trace points for tm > >Hi Ankur, > >Build seems failing with set, can you please check: >https://urldefense.proofpoint.com/v2/url?u=https- >3A__mails.dpdk.org_archives_test-2Dreport_2023- >2DJanuary_339696.html&d=DwICaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=ILjiNF3 >GF25y6QdHZUxMl6JrStU0MIuCtO5dMzn3Ybk&m=FhQtWKgLxBWQ7rF_fkPm7V >K5-efg3NcVDA6cTbGsoNZmX7WvvZKas2o4xnsIxj5D&s=HDHVPZX4YsLz- >DsRwK3mRisxOk9U8FK7fStn7gCgsXk&e= > >I can reproduce build failures via 32bit and debugoptimized builds. Sure, I will check.