From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: 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 ; 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 To: CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Ankur Dwivedi 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org 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 -- 2.25.1