get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/129304/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 129304,
    "url": "http://patchwork.dpdk.org/api/patches/129304/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/20230705153125.4657-3-viacheslavo@nvidia.com/",
    "project": {
        "id": 1,
        "url": "http://patchwork.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<20230705153125.4657-3-viacheslavo@nvidia.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20230705153125.4657-3-viacheslavo@nvidia.com",
    "date": "2023-07-05T15:31:23",
    "name": "[v5,2/4] net/mlx5: add comprehensive send completion trace",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "7ffd8a852100c4c257230df0d8d9282a6e92a559",
    "submitter": {
        "id": 1926,
        "url": "http://patchwork.dpdk.org/api/people/1926/?format=api",
        "name": "Slava Ovsiienko",
        "email": "viacheslavo@nvidia.com"
    },
    "delegate": {
        "id": 3268,
        "url": "http://patchwork.dpdk.org/api/users/3268/?format=api",
        "username": "rasland",
        "first_name": "Raslan",
        "last_name": "Darawsheh",
        "email": "rasland@nvidia.com"
    },
    "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/20230705153125.4657-3-viacheslavo@nvidia.com/mbox/",
    "series": [
        {
            "id": 28841,
            "url": "http://patchwork.dpdk.org/api/series/28841/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=28841",
            "date": "2023-07-05T15:31:22",
            "name": "net/mlx5: introduce Tx datapath tracing",
            "version": 5,
            "mbox": "http://patchwork.dpdk.org/series/28841/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/129304/comments/",
    "check": "success",
    "checks": "http://patchwork.dpdk.org/api/patches/129304/checks/",
    "tags": {},
    "related": [],
    "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])\n\tby inbox.dpdk.org (Postfix) with ESMTP id DB61242DD9;\n\tWed,  5 Jul 2023 17:32:05 +0200 (CEST)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 92AB442D31;\n\tWed,  5 Jul 2023 17:32:01 +0200 (CEST)",
            "from NAM10-BN7-obe.outbound.protection.outlook.com\n (mail-bn7nam10on2065.outbound.protection.outlook.com [40.107.92.65])\n by mails.dpdk.org (Postfix) with ESMTP id 05DD54021F\n for <dev@dpdk.org>; Wed,  5 Jul 2023 17:32:00 +0200 (CEST)",
            "from DS7PR07CA0024.namprd07.prod.outlook.com (2603:10b6:5:3af::6) by\n DM6PR12MB4249.namprd12.prod.outlook.com (2603:10b6:5:223::14) with\n Microsoft\n SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.20.6565.17; Wed, 5 Jul 2023 15:31:58 +0000",
            "from DM6NAM11FT045.eop-nam11.prod.protection.outlook.com\n (2603:10b6:5:3af:cafe::e1) by DS7PR07CA0024.outlook.office365.com\n (2603:10b6:5:3af::6) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.18 via Frontend\n Transport; Wed, 5 Jul 2023 15:31:58 +0000",
            "from mail.nvidia.com (216.228.117.161) by\n DM6NAM11FT045.mail.protection.outlook.com (10.13.173.123) with Microsoft SMTP\n Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.20.6521.45 via Frontend Transport; Wed, 5 Jul 2023 15:31:58 +0000",
            "from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com\n (10.129.200.67) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.5; Wed, 5 Jul 2023\n 08:31:43 -0700",
            "from nvidia.com (10.126.230.35) by rnnvmail201.nvidia.com\n (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.37; Wed, 5 Jul 2023\n 08:31:41 -0700"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=lTu/cKaJ6aaD+UaHMYcyv/+NqyZfKfOP35ijqsx55r3RIJ5EXi0Flnekq/N9TjTPkYR7Yc0ZehUfu/G6nTE4hm8ygvC9sKiJXkmhIqkd3/9QsrN/G8kMdRa6bmFow/5481XGFwCaOXBzm4c8ThkSt59dg+wLD2YukzKj6JJxGECRYVjknyqBCXQMc4aSD+0S4okPYGrz+qTDTQxOxWxgYEVLOt7Bac14MWP/Oq3xDEMhwZR2RnXx8x01OG0elrQjZ1HBLHmhfOWqPHHlHRFTLUu15oW57uFS7Aq00w7hNqcZn1O/RUtwUMw5G+fB5LZzGER3WZJ+UYUDXUyNKNmMug==",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=qJrTWX2yde97saBblEhtvqo7dVVh4I/sYlRae3IYEEU=;\n b=T108Z7+eD2EvbPu3cqMgTvO98buJY2qk1rwFV2UQV52jn6/2Y4wXmfrPrm2pdlRBRWzDYr/C6CxwcVncqyDTfFNBMl8MITPeTjXJin7/fAbMUD5HigllAgtIG1f8KJ72vbPRRPjRB8CfAY/MQqEvXh8wIKLAIOl1GMfXSON71JOWUOVlD9TAz7rrPQBK6Rs4nEZkHiZ4UKFXz0d5MVKYCI8taUO913qHoSyVV8x31GG/W5Xl4B47JoJuagraW/qG+HHczwSmQb2XckS7dCfMLoaCYs6KTltSDEwkigFLQPs7BIfd6RQ2F02mUfmGlmZdqwHKKz9z3w8x35ccxmYa1w==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 216.228.117.161) smtp.rcpttodomain=dpdk.org smtp.mailfrom=nvidia.com;\n dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com;\n dkim=none (message not signed); arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=qJrTWX2yde97saBblEhtvqo7dVVh4I/sYlRae3IYEEU=;\n b=O4TkEaQUM3wWc16aZ3WC0i7xAROQSEhLpsETWy/gMJcnJndsZnU+xnsM8bAG27wtdhsHAOh68mNAxLSCzWturosVGZIkDLdGCBU4rCDW57eaIGsDuSAAvRCKcw+WWexbyrgik6/wCeE2jUSglaDHzOaAI8Nzb1U4FfqnZ1F8aFrIkhXgA4PS5OVlmvcSZaehsyeli3sSJIX2+zRq4Cmyx7YreEiGlztnf80JFP7rHOzc6a6UUBgDq1iLEEdWUbeoxdXr8KPggPpgUvmru2GUjR+FXwpZNszNixfB6Jxg8nRiT55GKAg0LyoHC0RI44b8uUxW1gNg8AUi6k+Mkvu3+A==",
        "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 216.228.117.161)\n smtp.mailfrom=nvidia.com;\n dkim=none (message not signed)\n header.d=none;dmarc=pass action=none header.from=nvidia.com;",
        "Received-SPF": "Pass (protection.outlook.com: domain of nvidia.com designates\n 216.228.117.161 as permitted sender) receiver=protection.outlook.com;\n client-ip=216.228.117.161; helo=mail.nvidia.com; pr=C",
        "From": "Viacheslav Ovsiienko <viacheslavo@nvidia.com>",
        "To": "<dev@dpdk.org>",
        "CC": "<jerinj@marvell.com>, <rasland@nvidia.com>",
        "Subject": "[PATCH v5 2/4] net/mlx5: add comprehensive send completion trace",
        "Date": "Wed, 5 Jul 2023 18:31:23 +0300",
        "Message-ID": "<20230705153125.4657-3-viacheslavo@nvidia.com>",
        "X-Mailer": "git-send-email 2.18.1",
        "In-Reply-To": "<20230705153125.4657-1-viacheslavo@nvidia.com>",
        "References": "<20230420100803.494-1-viacheslavo@nvidia.com>\n <20230705153125.4657-1-viacheslavo@nvidia.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[10.126.230.35]",
        "X-ClientProxiedBy": "rnnvmail201.nvidia.com (10.129.68.8) To\n rnnvmail201.nvidia.com (10.129.68.8)",
        "X-EOPAttributedMessage": "0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-TrafficTypeDiagnostic": "DM6NAM11FT045:EE_|DM6PR12MB4249:EE_",
        "X-MS-Office365-Filtering-Correlation-Id": "04230b0e-fd56-4db2-0914-08db7d6cf878",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n XpDkIbbzn7qwfdpb2swLQa6JJPPXuUxt9JupwEgogvwfbd2Tp1BvYGYlL8qWt4iHLPtQgmv7UrV4ovUpxo9huIWnME7xrJ3P6bkvq9ujmcrvWTpta3Vik4lnrFFCA9CQU8mwOO1VvyiDWaDhIENn8+ZvEElJgoEDLXumbWFOB0chZog2KLcH/SWkBJPYaBf8+ZrLwU+oP8xxxOfJZFH7E3L2lfBZTGByCbzAno3PrSR/V5cr1G/38rdzUHjybmnGTR4ooK4BxMBVe3NFzAb/SxujOeNNQ7YGJtI+MVULyhH19LJvxl+69V1OKC6qHZzGank/nXintQbBdl8EPCPhw3AYjlOM9F5yxjSkKCaQu8+slfHbMvXARBlV0qWl8q/DXRO8RTsocWA9pJb2XjKdXyjKBGFSl7/o3CZhoUtg5VQvfqKPh/Z2c9jfQcZE5RA351LddWw7zgMig/doprfjTucZPw8CLHnLqvEy/WtfT6FO2jzUKHuXs3HoNSj0J2UttqzEsx3MwjhrtzvDsU/9lsBUuA8NXPtTM+VCBnZxL3lQcCkmWXf7fLVyUKmK9l6UdyXhtH21dKWjPo30EFzgl3mLBfaVMpYNR9Tmsrqt2gFshCaXvSMPt2aP65n192jUL67v7MpPHEp55cupqWidF1MTJjzDyoDJ02fQMw4XOiNhbi+tnUrazVaGvQxjthYBa+ggvARbnyOulpDWN0XP9P9R+vPyG084x4xrk/gzPbMq/+Uuh5WRkbpjDUulnlsS",
        "X-Forefront-Antispam-Report": "CIP:216.228.117.161; CTRY:US; LANG:en; SCL:1;\n SRV:;\n IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge2.nvidia.com; CAT:NONE;\n SFS:(13230028)(4636009)(376002)(39860400002)(136003)(346002)(396003)(451199021)(40470700004)(36840700001)(46966006)(8936002)(8676002)(2906002)(2616005)(55016003)(70586007)(40480700001)(16526019)(6286002)(5660300002)(1076003)(26005)(336012)(186003)(70206006)(41300700001)(40460700003)(82740400003)(356005)(7636003)(6666004)(426003)(4326008)(36756003)(316002)(83380400001)(6916009)(47076005)(107886003)(7696005)(36860700001)(54906003)(478600001)(82310400005)(86362001);\n DIR:OUT; SFP:1101;",
        "X-OriginatorOrg": "Nvidia.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "05 Jul 2023 15:31:58.0050 (UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 04230b0e-fd56-4db2-0914-08db7d6cf878",
        "X-MS-Exchange-CrossTenant-Id": "43083d15-7273-40c1-b7db-39efd9ccc17a",
        "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.161];\n Helo=[mail.nvidia.com]",
        "X-MS-Exchange-CrossTenant-AuthSource": "\n DM6NAM11FT045.eop-nam11.prod.protection.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "DM6PR12MB4249",
        "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>,\n <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>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org"
    },
    "content": "There is the demand to trace the send completions of\nevery WQE if time scheduling is enabled.\n\nThe patch extends the size of completion queue and\nrequests completion on every issued WQE in the\nsend queue. As the result hardware provides CQE on\neach completed WQE and driver is able to fetch\ncompletion timestamp for dedicated operation.\n\nThe add code is under conditional compilation\nRTE_ENABLE_TRACE_FP flag and does not impact the\nrelease code.\n\nSigned-off-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>\n---\n drivers/net/mlx5/linux/mlx5_verbs.c |  8 +++-\n drivers/net/mlx5/mlx5_devx.c        |  8 +++-\n drivers/net/mlx5/mlx5_tx.h          | 63 +++++++++++++++++++++++++++--\n 3 files changed, 71 insertions(+), 8 deletions(-)",
    "diff": "diff --git a/drivers/net/mlx5/linux/mlx5_verbs.c b/drivers/net/mlx5/linux/mlx5_verbs.c\nindex 7233c2c7fa..b54f3ccd9a 100644\n--- a/drivers/net/mlx5/linux/mlx5_verbs.c\n+++ b/drivers/net/mlx5/linux/mlx5_verbs.c\n@@ -968,8 +968,12 @@ mlx5_txq_ibv_obj_new(struct rte_eth_dev *dev, uint16_t idx)\n \t\trte_errno = EINVAL;\n \t\treturn -rte_errno;\n \t}\n-\tcqe_n = desc / MLX5_TX_COMP_THRESH +\n-\t\t1 + MLX5_TX_COMP_THRESH_INLINE_DIV;\n+\tif (__rte_trace_point_fp_is_enabled() &&\n+\t    txq_data->offloads & RTE_ETH_TX_OFFLOAD_SEND_ON_TIMESTAMP)\n+\t\tcqe_n = UINT16_MAX / 2 - 1;\n+\telse\n+\t\tcqe_n = desc / MLX5_TX_COMP_THRESH +\n+\t\t\t1 + MLX5_TX_COMP_THRESH_INLINE_DIV;\n \ttxq_obj->cq = mlx5_glue->create_cq(priv->sh->cdev->ctx, cqe_n,\n \t\t\t\t\t   NULL, NULL, 0);\n \tif (txq_obj->cq == NULL) {\ndiff --git a/drivers/net/mlx5/mlx5_devx.c b/drivers/net/mlx5/mlx5_devx.c\nindex 4369d2557e..5082a7e178 100644\n--- a/drivers/net/mlx5/mlx5_devx.c\n+++ b/drivers/net/mlx5/mlx5_devx.c\n@@ -1465,8 +1465,12 @@ mlx5_txq_devx_obj_new(struct rte_eth_dev *dev, uint16_t idx)\n \tMLX5_ASSERT(ppriv);\n \ttxq_obj->txq_ctrl = txq_ctrl;\n \ttxq_obj->dev = dev;\n-\tcqe_n = (1UL << txq_data->elts_n) / MLX5_TX_COMP_THRESH +\n-\t\t1 + MLX5_TX_COMP_THRESH_INLINE_DIV;\n+\tif (__rte_trace_point_fp_is_enabled() &&\n+\t    txq_data->offloads & RTE_ETH_TX_OFFLOAD_SEND_ON_TIMESTAMP)\n+\t\tcqe_n = UINT16_MAX / 2 - 1;\n+\telse\n+\t\tcqe_n = (1UL << txq_data->elts_n) / MLX5_TX_COMP_THRESH +\n+\t\t\t1 + MLX5_TX_COMP_THRESH_INLINE_DIV;\n \tlog_desc_n = log2above(cqe_n);\n \tcqe_n = 1UL << log_desc_n;\n \tif (cqe_n > UINT16_MAX) {\ndiff --git a/drivers/net/mlx5/mlx5_tx.h b/drivers/net/mlx5/mlx5_tx.h\nindex 5df0c4a794..264cc192dc 100644\n--- a/drivers/net/mlx5/mlx5_tx.h\n+++ b/drivers/net/mlx5/mlx5_tx.h\n@@ -729,6 +729,54 @@ mlx5_tx_request_completion(struct mlx5_txq_data *__rte_restrict txq,\n \t}\n }\n \n+/**\n+ * Set completion request flag for all issued WQEs.\n+ * This routine is intended to be used with enabled fast path tracing\n+ * and send scheduling on time to provide the detailed report in trace\n+ * for send completions on every WQE.\n+ *\n+ * @param txq\n+ *   Pointer to TX queue structure.\n+ * @param loc\n+ *   Pointer to burst routine local context.\n+ * @param olx\n+ *   Configured Tx offloads mask. It is fully defined at\n+ *   compile time and may be used for optimization.\n+ */\n+static __rte_always_inline void\n+mlx5_tx_request_completion_trace(struct mlx5_txq_data *__rte_restrict txq,\n+\t\t\t\t struct mlx5_txq_local *__rte_restrict loc,\n+\t\t\t\t unsigned int olx)\n+{\n+\tuint16_t head = txq->elts_comp;\n+\n+\twhile (txq->wqe_comp != txq->wqe_ci) {\n+\t\tvolatile struct mlx5_wqe *wqe;\n+\t\tuint32_t wqe_n;\n+\n+\t\tMLX5_ASSERT(loc->wqe_last);\n+\t\twqe = txq->wqes + (txq->wqe_comp & txq->wqe_m);\n+\t\tif (wqe == loc->wqe_last) {\n+\t\t\thead = txq->elts_head;\n+\t\t\thead +=\tMLX5_TXOFF_CONFIG(INLINE) ?\n+\t\t\t\t0 : loc->pkts_sent - loc->pkts_copy;\n+\t\t\ttxq->elts_comp = head;\n+\t\t}\n+\t\t/* Completion request flag was set on cseg constructing. */\n+#ifdef RTE_LIBRTE_MLX5_DEBUG\n+\t\ttxq->fcqs[txq->cq_pi++ & txq->cqe_m] = head |\n+\t\t\t  (wqe->cseg.opcode >> 8) << 16;\n+#else\n+\t\ttxq->fcqs[txq->cq_pi++ & txq->cqe_m] = head;\n+#endif\n+\t\t/* A CQE slot must always be available. */\n+\t\tMLX5_ASSERT((txq->cq_pi - txq->cq_ci) <= txq->cqe_s);\n+\t\t/* Advance to the next WQE in the queue. */\n+\t\twqe_n = rte_be_to_cpu_32(wqe->cseg.sq_ds) & 0x3F;\n+\t\ttxq->wqe_comp += RTE_ALIGN(wqe_n, 4) / 4;\n+\t}\n+}\n+\n /**\n  * Build the Control Segment with specified opcode:\n  * - MLX5_OPCODE_SEND\n@@ -755,7 +803,7 @@ mlx5_tx_cseg_init(struct mlx5_txq_data *__rte_restrict txq,\n \t\t  struct mlx5_wqe *__rte_restrict wqe,\n \t\t  unsigned int ds,\n \t\t  unsigned int opcode,\n-\t\t  unsigned int olx __rte_unused)\n+\t\t  unsigned int olx)\n {\n \tstruct mlx5_wqe_cseg *__rte_restrict cs = &wqe->cseg;\n \n@@ -764,8 +812,12 @@ mlx5_tx_cseg_init(struct mlx5_txq_data *__rte_restrict txq,\n \t\topcode = MLX5_OPCODE_TSO | MLX5_OPC_MOD_MPW << 24;\n \tcs->opcode = rte_cpu_to_be_32((txq->wqe_ci << 8) | opcode);\n \tcs->sq_ds = rte_cpu_to_be_32(txq->qp_num_8s | ds);\n-\tcs->flags = RTE_BE32(MLX5_COMP_ONLY_FIRST_ERR <<\n-\t\t\t     MLX5_COMP_MODE_OFFSET);\n+\tif (MLX5_TXOFF_CONFIG(TXPP) && __rte_trace_point_fp_is_enabled())\n+\t\tcs->flags = RTE_BE32(MLX5_COMP_ALWAYS <<\n+\t\t\t\t     MLX5_COMP_MODE_OFFSET);\n+\telse\n+\t\tcs->flags = RTE_BE32(MLX5_COMP_ONLY_FIRST_ERR <<\n+\t\t\t\t     MLX5_COMP_MODE_OFFSET);\n \tcs->misc = RTE_BE32(0);\n \tif (__rte_trace_point_fp_is_enabled() && !loc->pkts_sent)\n \t\trte_pmd_mlx5_trace_tx_entry(txq->port_id, txq->idx);\n@@ -3663,7 +3715,10 @@ mlx5_tx_burst_tmpl(struct mlx5_txq_data *__rte_restrict txq,\n \tif (unlikely(loc.pkts_sent == loc.pkts_loop))\n \t\tgoto burst_exit;\n \t/* Request CQE generation if limits are reached. */\n-\tmlx5_tx_request_completion(txq, &loc, olx);\n+\tif (MLX5_TXOFF_CONFIG(TXPP) && __rte_trace_point_fp_is_enabled())\n+\t\tmlx5_tx_request_completion_trace(txq, &loc, olx);\n+\telse\n+\t\tmlx5_tx_request_completion(txq, &loc, olx);\n \t/*\n \t * Ring QP doorbell immediately after WQE building completion\n \t * to improve latencies. The pure software related data treatment\n",
    "prefixes": [
        "v5",
        "2/4"
    ]
}