get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 102318,
    "url": "https://patches.dpdk.org/api/patches/102318/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/20211019205602.3188203-14-michaelba@nvidia.com/",
    "project": {
        "id": 1,
        "url": "https://patches.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": "<20211019205602.3188203-14-michaelba@nvidia.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20211019205602.3188203-14-michaelba@nvidia.com",
    "date": "2021-10-19T20:55:57",
    "name": "[v3,13/18] common/mlx5: add MR ctrl init function",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "cc893c6f3b29b44cd7d422a235386b4dc12087fa",
    "submitter": {
        "id": 1949,
        "url": "https://patches.dpdk.org/api/people/1949/?format=api",
        "name": "Michael Baum",
        "email": "michaelba@nvidia.com"
    },
    "delegate": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/20211019205602.3188203-14-michaelba@nvidia.com/mbox/",
    "series": [
        {
            "id": 19808,
            "url": "https://patches.dpdk.org/api/series/19808/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=19808",
            "date": "2021-10-19T20:55:44",
            "name": "mlx5: sharing global MR cache between drivers",
            "version": 3,
            "mbox": "https://patches.dpdk.org/series/19808/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/102318/comments/",
    "check": "success",
    "checks": "https://patches.dpdk.org/api/patches/102318/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 CCD21A0C41;\n\tTue, 19 Oct 2021 22:58:07 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id E9C9341100;\n\tTue, 19 Oct 2021 22:57:19 +0200 (CEST)",
            "from NAM11-BN8-obe.outbound.protection.outlook.com\n (mail-bn8nam11on2054.outbound.protection.outlook.com [40.107.236.54])\n by mails.dpdk.org (Postfix) with ESMTP id EF61A4113A\n for <dev@dpdk.org>; Tue, 19 Oct 2021 22:56:52 +0200 (CEST)",
            "from BN9PR03CA0906.namprd03.prod.outlook.com (2603:10b6:408:107::11)\n by BN7PR12MB2659.namprd12.prod.outlook.com (2603:10b6:408:27::11)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4608.18; Tue, 19 Oct\n 2021 20:56:47 +0000",
            "from BN8NAM11FT035.eop-nam11.prod.protection.outlook.com\n (2603:10b6:408:107:cafe::96) by BN9PR03CA0906.outlook.office365.com\n (2603:10b6:408:107::11) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4608.17 via Frontend\n Transport; Tue, 19 Oct 2021 20:56:47 +0000",
            "from mail.nvidia.com (216.228.112.34) by\n BN8NAM11FT035.mail.protection.outlook.com (10.13.177.116) with Microsoft SMTP\n Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id\n 15.20.4608.15 via Frontend Transport; Tue, 19 Oct 2021 20:56:46 +0000",
            "from nvidia.com (172.20.187.6) by HQMAIL107.nvidia.com\n (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Tue, 19 Oct\n 2021 20:56:45 +0000"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=AmQOpl0/vrBIHupT5BgVn9oDySWaRiUCB488Uks+wBdT+OqUrle5wXnMZYVtaEyTb8QG+aJIBUOkSM4ewbDGCO2GyYKEfhH9N5mRfJl7KhLYFE8LFSq/QLr0m1Pp+zz2c4h9cXY9idSFIfaiQLB3eMrnL82/SkHdagETdLjyF2Nmh44MGgJmx6OdVes5DRPFIIcRsojfH6vrsfnD0DsDl8WOg+LH1c27iGyhGmMhkcRRs0AN5Hu93Gp9HlP2Inkz5+Dr8pz4fNaoYCbtvuO2JnM5p5ztpcW8oZDBWNTSgpIjU7tjr6bdJ0tei4fq8P3vnHrYr3Qw18PVC7SsKKNJQg==",
        "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=4h+8fKLMTnzFIXM4CRj3WhtDonOAqLcWQS5/Qp7wa3Y=;\n b=LTcs/emiiHXuyZZgMmPNxJU8fiWScGulPPQXY5NnOgvJ26cDjhYOwdXigiDF3aIe/ZS6ERKzom/AYL9pjtiuty4V6wOMimKlLSpOfxI5Neebers+d1Ngt/9SPqXLKqI/wbo13+k27cXjqUyBYlIqogKd0Pie4wrFZSo1tJZL+oxQM92aAqT0FLtybZFCFCvFZ/dpybMukwYGWAvZd+aUaCRhiX4QQnnjqn1cEjSXB42J1ia7lWL7CQUaiDFXR0XrlXDgU6qVuD1KL7ZjLurrg923GSc9FbUpB5lRu3MP1kws9QlLenVUubDG2Ii7FFKD8wwkiPni7QGYvpad8ksbSQ==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 216.228.112.34) smtp.rcpttodomain=monjalon.net smtp.mailfrom=nvidia.com;\n dmarc=pass (p=quarantine sp=quarantine pct=100) action=none\n header.from=nvidia.com; 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=4h+8fKLMTnzFIXM4CRj3WhtDonOAqLcWQS5/Qp7wa3Y=;\n b=cFUuCL6vZUOaHNsK2PKdAcZaVh7all7KKi4wHYbQjcagxmbxi0W9iwRn2EfEYun2SbixCID3lk69vGND2rZNQOeIss0YVyjIxNjmfUFGWu3Jb4b1t6kmcClQQzWnNry6RlpZJKwKefSQ76SRzvKps4h2I7w8Hue+m8mIVy6BRePv5TeK7edF4HfiUBuOwhxN3p+pDfS3ZPnY8Fl4AE3dZ61Aehbsb3+Zm26RmJGccp6CehMrrPobCIqs4Fs0Xf9R0lbVmbmkerRW+p9QnsUJGfTw7nwQVZcvNWzIQdQyTNEjV2LtNWVY2ivKnBWKw+wJzzkTL41/N3O8rqPwV4Zqfg==",
        "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 216.228.112.34)\n smtp.mailfrom=nvidia.com; monjalon.net; dkim=none (message not signed)\n header.d=none;monjalon.net; dmarc=pass action=none header.from=nvidia.com;",
        "Received-SPF": "Pass (protection.outlook.com: domain of nvidia.com designates\n 216.228.112.34 as permitted sender) receiver=protection.outlook.com;\n client-ip=216.228.112.34; helo=mail.nvidia.com;",
        "From": "<michaelba@nvidia.com>",
        "To": "<dev@dpdk.org>",
        "CC": "Matan Azrad <matan@nvidia.com>, Thomas Monjalon <thomas@monjalon.net>,\n Michael Baum <michaelba@oss.nvidia.com>",
        "Date": "Tue, 19 Oct 2021 23:55:57 +0300",
        "Message-ID": "<20211019205602.3188203-14-michaelba@nvidia.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "In-Reply-To": "<20211019205602.3188203-1-michaelba@nvidia.com>",
        "References": "<20211006220350.2357487-1-michaelba@nvidia.com>\n <20211019205602.3188203-1-michaelba@nvidia.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[172.20.187.6]",
        "X-ClientProxiedBy": "HQMAIL101.nvidia.com (172.20.187.10) To\n HQMAIL107.nvidia.com (172.20.187.13)",
        "X-EOPAttributedMessage": "0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-Correlation-Id": "1cdc9082-2acc-4aaa-dd8a-08d99342f6ee",
        "X-MS-TrafficTypeDiagnostic": "BN7PR12MB2659:",
        "X-LD-Processed": "43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr",
        "X-Microsoft-Antispam-PRVS": "\n <BN7PR12MB2659B54EF0BE0A6EA109068ECCBD9@BN7PR12MB2659.namprd12.prod.outlook.com>",
        "X-MS-Oob-TLC-OOBClassifiers": "OLM:4714;",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n NNjFwzqGKBXnO/X3scrKlsvypG3KElQStT1ZUm68uk9WIz8KMh+smcFalncuOjo8KFwksmFcoB22UQKHxhY8q4syXiFUCO6ctjm72VTYhkDaMq9OttU4XHbCdtTtCmbw84szBUlK1Nl9uD8HmlyQq+eb4gIdA4mvEbJ4+R/GcS8GUcH5lISnwoMdYs0ydL2X0qAiDdEi6EPc9nlGoDEOH6ujHeX55eQB8azxyp761zLM1817KJPTTWulXAO1RW+g2xHZB1jIdPBUucSOYsYXgAwH6crhT1QbiJuLAEfnBB1JnXYQxtdcjKaXaUbJr6rHUnZNnKNA8527zz5LZaPM1Z28jBqZ6QEQHbHC6pwupC7Ej0dHbXEOZz7T6CJfGYoGxNxhLGn755zfm/CdKWEGD/mjdMMMoiTswEUNofrcj9KFSgMz5IvbUz+1bk0NKE/QnaGHYOp7XKLLvwL5xTWqFUGgCquqXDUv3dH8+7MQOCMz7xwYxWvceYchAGK5DwSOkI+jMoa3dOazwfsccL3m69ORy59ZZ9cY50Xd+K5aIJRE36+vja5f55ma7cW8xKf8jkcf0dDmrfJfqYYsESILaVHmVroKS3FLEa3PfJ0y0Qpb3eUSvBQ5RgL+ccaL+uWw2b9ZHjIFMkuNZmxQXiPcFVUh5iA0DqDUWbGjE9wJACWDQsD2raPQcKMHAAT+z9n3tF+n+cZmHD+Bb/ORTsL5VQ==",
        "X-Forefront-Antispam-Report": "CIP:216.228.112.34; CTRY:US; LANG:en; SCL:1;\n SRV:;\n IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:schybrid03.nvidia.com; CAT:NONE;\n SFS:(4636009)(36840700001)(46966006)(36860700001)(86362001)(82310400003)(356005)(107886003)(7636003)(47076005)(54906003)(83380400001)(316002)(426003)(36756003)(508600001)(7696005)(6666004)(55016002)(6286002)(2616005)(4326008)(336012)(8676002)(2876002)(70206006)(8936002)(186003)(16526019)(26005)(70586007)(1076003)(6916009)(5660300002)(2906002);\n DIR:OUT; SFP:1101;",
        "X-OriginatorOrg": "Nvidia.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "19 Oct 2021 20:56:46.6621 (UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 1cdc9082-2acc-4aaa-dd8a-08d99342f6ee",
        "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.112.34];\n Helo=[mail.nvidia.com]",
        "X-MS-Exchange-CrossTenant-AuthSource": "\n BN8NAM11FT035.eop-nam11.prod.protection.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "BN7PR12MB2659",
        "Subject": "[dpdk-dev] [PATCH v3 13/18] common/mlx5: add MR ctrl init function",
        "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",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "From: Michael Baum <michaelba@oss.nvidia.com>\n\nAdd function for MR control structure initialization.\nThis function include:\n - btree initialization.\n - dev_gen_ptr initialization.\n\nSigned-off-by: Michael Baum <michaelba@oss.nvidia.com>\nAcked-by: Matan Azrad <matan@nvidia.com>\n---\n drivers/common/mlx5/mlx5_common_mr.c    | 28 +++++++++++++++++++++++++\n drivers/common/mlx5/mlx5_common_mr.h    |  3 +++\n drivers/common/mlx5/version.map         |  1 +\n drivers/compress/mlx5/mlx5_compress.c   |  6 ++----\n drivers/crypto/mlx5/mlx5_crypto.c       |  5 ++---\n drivers/net/mlx5/mlx5_rxq.c             |  6 ++----\n drivers/net/mlx5/mlx5_txq.c             |  6 ++----\n drivers/regex/mlx5/mlx5_regex_control.c |  6 ++----\n 8 files changed, 42 insertions(+), 19 deletions(-)",
    "diff": "diff --git a/drivers/common/mlx5/mlx5_common_mr.c b/drivers/common/mlx5/mlx5_common_mr.c\nindex 2e039a4e70..8fd65484cf 100644\n--- a/drivers/common/mlx5/mlx5_common_mr.c\n+++ b/drivers/common/mlx5/mlx5_common_mr.c\n@@ -271,6 +271,34 @@ mlx5_mr_btree_dump(struct mlx5_mr_btree *bt __rte_unused)\n #endif\n }\n \n+/**\n+ * Initialize per-queue MR control descriptor.\n+ *\n+ * @param mr_ctrl\n+ *   Pointer to MR control structure.\n+ * @param dev_gen_ptr\n+ *   Pointer to generation number of global cache.\n+ * @param socket\n+ *   NUMA socket on which memory must be allocated.\n+ *\n+ * @return\n+ *   0 on success, a negative errno value otherwise and rte_errno is set.\n+ */\n+int\n+mlx5_mr_ctrl_init(struct mlx5_mr_ctrl *mr_ctrl, uint32_t *dev_gen_ptr,\n+\t\t  int socket)\n+{\n+\tif (mr_ctrl == NULL) {\n+\t\trte_errno = EINVAL;\n+\t\treturn -rte_errno;\n+\t}\n+\t/* Save pointer of global generation number to check memory event. */\n+\tmr_ctrl->dev_gen_ptr = dev_gen_ptr;\n+\t/* Initialize B-tree and allocate memory for bottom-half cache table. */\n+\treturn mlx5_mr_btree_init(&mr_ctrl->cache_bh, MLX5_MR_BTREE_CACHE_N,\n+\t\t\t\t  socket);\n+}\n+\n /**\n  * Find virtually contiguous memory chunk in a given MR.\n  *\ndiff --git a/drivers/common/mlx5/mlx5_common_mr.h b/drivers/common/mlx5/mlx5_common_mr.h\nindex 15489cd399..1392d9b55a 100644\n--- a/drivers/common/mlx5/mlx5_common_mr.h\n+++ b/drivers/common/mlx5/mlx5_common_mr.h\n@@ -124,6 +124,9 @@ mlx5_mr_lookup_lkey(struct mr_cache_entry *lkp_tbl, uint16_t *cached_idx,\n \treturn UINT32_MAX;\n }\n \n+__rte_internal\n+int mlx5_mr_ctrl_init(struct mlx5_mr_ctrl *mr_ctrl, uint32_t *dev_gen_ptr,\n+\t\t      int socket);\n __rte_internal\n int mlx5_mr_btree_init(struct mlx5_mr_btree *bt, int n, int socket);\n __rte_internal\ndiff --git a/drivers/common/mlx5/version.map b/drivers/common/mlx5/version.map\nindex 44c4593888..6200c013fb 100644\n--- a/drivers/common/mlx5/version.map\n+++ b/drivers/common/mlx5/version.map\n@@ -111,6 +111,7 @@ INTERNAL {\n \tmlx5_mr_btree_free;\n \tmlx5_mr_btree_init;\n \tmlx5_mr_create_primary;\n+    mlx5_mr_ctrl_init;\n \tmlx5_mr_dump_cache;\n \tmlx5_mr_flush_local_cache;\n \tmlx5_mr_free;\ndiff --git a/drivers/compress/mlx5/mlx5_compress.c b/drivers/compress/mlx5/mlx5_compress.c\nindex 8fe65293a6..66b80a46c3 100644\n--- a/drivers/compress/mlx5/mlx5_compress.c\n+++ b/drivers/compress/mlx5/mlx5_compress.c\n@@ -206,8 +206,8 @@ mlx5_compress_qp_setup(struct rte_compressdev *dev, uint16_t qp_id,\n \t\treturn -rte_errno;\n \t}\n \tdev->data->queue_pairs[qp_id] = qp;\n-\tif (mlx5_mr_btree_init(&qp->mr_ctrl.cache_bh, MLX5_MR_BTREE_CACHE_N,\n-\t\t\t       priv->dev_config.socket_id)) {\n+\tif (mlx5_mr_ctrl_init(&qp->mr_ctrl, &priv->mr_scache.dev_gen,\n+\t\t\t      priv->dev_config.socket_id)) {\n \t\tDRV_LOG(ERR, \"Cannot allocate MR Btree for qp %u.\",\n \t\t\t(uint32_t)qp_id);\n \t\trte_errno = ENOMEM;\n@@ -258,8 +258,6 @@ mlx5_compress_qp_setup(struct rte_compressdev *dev, uint16_t qp_id,\n \tret = mlx5_devx_qp2rts(&qp->qp, 0);\n \tif (ret)\n \t\tgoto err;\n-\t/* Save pointer of global generation number to check memory event. */\n-\tqp->mr_ctrl.dev_gen_ptr = &priv->mr_scache.dev_gen;\n \tDRV_LOG(INFO, \"QP %u: SQN=0x%X CQN=0x%X entries num = %u\",\n \t\t(uint32_t)qp_id, qp->qp.qp->id, qp->cq.cq->id, qp->entries_n);\n \treturn 0;\ndiff --git a/drivers/crypto/mlx5/mlx5_crypto.c b/drivers/crypto/mlx5/mlx5_crypto.c\nindex ff4c67c0a0..77f0688ba0 100644\n--- a/drivers/crypto/mlx5/mlx5_crypto.c\n+++ b/drivers/crypto/mlx5/mlx5_crypto.c\n@@ -677,14 +677,13 @@ mlx5_crypto_queue_pair_setup(struct rte_cryptodev *dev, uint16_t qp_id,\n \t\tDRV_LOG(ERR, \"Failed to create QP.\");\n \t\tgoto error;\n \t}\n-\tif (mlx5_mr_btree_init(&qp->mr_ctrl.cache_bh, MLX5_MR_BTREE_CACHE_N,\n-\t\t\t       priv->dev_config.socket_id) != 0) {\n+\tif (mlx5_mr_ctrl_init(&qp->mr_ctrl, &priv->mr_scache.dev_gen,\n+\t\t\t      priv->dev_config.socket_id) != 0) {\n \t\tDRV_LOG(ERR, \"Cannot allocate MR Btree for qp %u.\",\n \t\t\t(uint32_t)qp_id);\n \t\trte_errno = ENOMEM;\n \t\tgoto error;\n \t}\n-\tqp->mr_ctrl.dev_gen_ptr = &priv->mr_scache.dev_gen;\n \t/*\n \t * In Order to configure self loopback, when calling devx qp2rts the\n \t * remote QP id that is used is the id of the same QP.\ndiff --git a/drivers/net/mlx5/mlx5_rxq.c b/drivers/net/mlx5/mlx5_rxq.c\nindex 43ea890d2b..53c8c5439d 100644\n--- a/drivers/net/mlx5/mlx5_rxq.c\n+++ b/drivers/net/mlx5/mlx5_rxq.c\n@@ -1449,13 +1449,11 @@ mlx5_rxq_new(struct rte_eth_dev *dev, uint16_t idx, uint16_t desc,\n \t\tgoto error;\n \t}\n \ttmpl->type = MLX5_RXQ_TYPE_STANDARD;\n-\tif (mlx5_mr_btree_init(&tmpl->rxq.mr_ctrl.cache_bh,\n-\t\t\t       MLX5_MR_BTREE_CACHE_N, socket)) {\n+\tif (mlx5_mr_ctrl_init(&tmpl->rxq.mr_ctrl,\n+\t\t\t      &priv->sh->share_cache.dev_gen, socket)) {\n \t\t/* rte_errno is already set. */\n \t\tgoto error;\n \t}\n-\t/* Rx queues don't use this pointer, but we want a valid structure. */\n-\ttmpl->rxq.mr_ctrl.dev_gen_ptr = &priv->sh->share_cache.dev_gen;\n \ttmpl->socket = socket;\n \tif (dev->data->dev_conf.intr_conf.rxq)\n \t\ttmpl->irq = 1;\ndiff --git a/drivers/net/mlx5/mlx5_txq.c b/drivers/net/mlx5/mlx5_txq.c\nindex ffb252525d..f12510712a 100644\n--- a/drivers/net/mlx5/mlx5_txq.c\n+++ b/drivers/net/mlx5/mlx5_txq.c\n@@ -1117,13 +1117,11 @@ mlx5_txq_new(struct rte_eth_dev *dev, uint16_t idx, uint16_t desc,\n \t\trte_errno = ENOMEM;\n \t\treturn NULL;\n \t}\n-\tif (mlx5_mr_btree_init(&tmpl->txq.mr_ctrl.cache_bh,\n-\t\t\t       MLX5_MR_BTREE_CACHE_N, socket)) {\n+\tif (mlx5_mr_ctrl_init(&tmpl->txq.mr_ctrl,\n+\t\t\t      &priv->sh->share_cache.dev_gen, socket)) {\n \t\t/* rte_errno is already set. */\n \t\tgoto error;\n \t}\n-\t/* Save pointer of global generation number to check memory event. */\n-\ttmpl->txq.mr_ctrl.dev_gen_ptr = &priv->sh->share_cache.dev_gen;\n \tMLX5_ASSERT(desc > MLX5_TX_COMP_THRESH);\n \ttmpl->txq.offloads = conf->offloads |\n \t\t\t     dev->data->dev_conf.txmode.offloads;\ndiff --git a/drivers/regex/mlx5/mlx5_regex_control.c b/drivers/regex/mlx5/mlx5_regex_control.c\nindex 545bbbcf89..6735e51976 100644\n--- a/drivers/regex/mlx5/mlx5_regex_control.c\n+++ b/drivers/regex/mlx5/mlx5_regex_control.c\n@@ -242,10 +242,8 @@ mlx5_regex_qp_setup(struct rte_regexdev *dev, uint16_t qp_ind,\n \t\tnb_sq_config++;\n \t}\n \n-\t/* Save pointer of global generation number to check memory event. */\n-\tqp->mr_ctrl.dev_gen_ptr = &priv->mr_scache.dev_gen;\n-\tret = mlx5_mr_btree_init(&qp->mr_ctrl.cache_bh, MLX5_MR_BTREE_CACHE_N,\n-\t\t\t\t rte_socket_id());\n+\tret = mlx5_mr_ctrl_init(&qp->mr_ctrl, &priv->mr_scache.dev_gen,\n+\t\t\t\trte_socket_id());\n \tif (ret) {\n \t\tDRV_LOG(ERR, \"Error setting up mr btree\");\n \t\tgoto err_btree;\n",
    "prefixes": [
        "v3",
        "13/18"
    ]
}