get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 65138,
    "url": "http://patches.dpdk.org/api/patches/65138/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20200127090724.1667-1-g.singh@nxp.com/",
    "project": {
        "id": 1,
        "url": "http://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": "<20200127090724.1667-1-g.singh@nxp.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20200127090724.1667-1-g.singh@nxp.com",
    "date": "2020-01-27T09:07:23",
    "name": "[1/2] crypto/dpaa_sec: fix performance issue",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "fed69a479839894949dd3df5260b9ea617c1afd1",
    "submitter": {
        "id": 1068,
        "url": "http://patches.dpdk.org/api/people/1068/?format=api",
        "name": "Gagandeep Singh",
        "email": "g.singh@nxp.com"
    },
    "delegate": {
        "id": 6690,
        "url": "http://patches.dpdk.org/api/users/6690/?format=api",
        "username": "akhil",
        "first_name": "akhil",
        "last_name": "goyal",
        "email": "gakhil@marvell.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20200127090724.1667-1-g.singh@nxp.com/mbox/",
    "series": [
        {
            "id": 8302,
            "url": "http://patches.dpdk.org/api/series/8302/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=8302",
            "date": "2020-01-27T09:07:23",
            "name": "[1/2] crypto/dpaa_sec: fix performance issue",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/8302/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/65138/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/65138/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 dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 3E9ECA0530;\n\tMon, 27 Jan 2020 10:25:13 +0100 (CET)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id AFB771BE94;\n\tMon, 27 Jan 2020 10:25:11 +0100 (CET)",
            "from inva021.nxp.com (inva021.nxp.com [92.121.34.21])\n by dpdk.org (Postfix) with ESMTP id CF70A4C7A\n for <dev@dpdk.org>; Mon, 27 Jan 2020 10:25:09 +0100 (CET)",
            "from inva021.nxp.com (localhost [127.0.0.1])\n by inva021.eu-rdc02.nxp.com (Postfix) with ESMTP id 3BE5221506D;\n Mon, 27 Jan 2020 10:25:09 +0100 (CET)",
            "from invc005.ap-rdc01.nxp.com (invc005.ap-rdc01.nxp.com\n [165.114.16.14])\n by inva021.eu-rdc02.nxp.com (Postfix) with ESMTP id E771A20031D;\n Mon, 27 Jan 2020 10:25:06 +0100 (CET)",
            "from GDB1.ap.freescale.net (gdb1.ap.freescale.net [10.232.132.179])\n by invc005.ap-rdc01.nxp.com (Postfix) with ESMTP id 0F73B40246;\n Mon, 27 Jan 2020 17:25:03 +0800 (SGT)"
        ],
        "From": "Gagandeep Singh <g.singh@nxp.com>",
        "To": "dev@dpdk.org,\n\takhil.goyal@nxp.com",
        "Cc": "Gagandeep Singh <g.singh@nxp.com>",
        "Date": "Mon, 27 Jan 2020 14:37:23 +0530",
        "Message-Id": "<20200127090724.1667-1-g.singh@nxp.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "In-Reply-To": "<20200121104544.8715-1-g.singh@nxp.com>",
        "References": "<20200121104544.8715-1-g.singh@nxp.com>",
        "X-Virus-Scanned": "ClamAV using ClamSMTP",
        "Subject": "[dpdk-dev] [PATCH 1/2] crypto/dpaa_sec: fix performance issue",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "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": "DPAA sec driver is using virtual to physical address\ntranslation in its data path and driver is using\ndpaax_iova_table_update() API in every address translation\nwhich is very costly.\nThis patch moves dpaax_iova_table_update() calling to rte_dpaa_mem_ptov(),\nonly if it fails to found translation from DPAAX table.\n\nFixes: 033968bdc28 (\"drivers/crypto/dpaa_sec: update DPAA iova table in dpaa_mem_vtop\")\nSigned-off-by: Gagandeep Singh <g.singh@nxp.com>\n---\n drivers/bus/dpaa/rte_dpaa_bus.h     |  18 ++++-\n drivers/crypto/dpaa_sec/dpaa_sec.c  | 117 +++++++++++-----------------\n drivers/crypto/dpaa_sec/meson.build |   2 +-\n 3 files changed, 64 insertions(+), 73 deletions(-)",
    "diff": "diff --git a/drivers/bus/dpaa/rte_dpaa_bus.h b/drivers/bus/dpaa/rte_dpaa_bus.h\nindex 9bf2cd9d6..373aca978 100644\n--- a/drivers/bus/dpaa/rte_dpaa_bus.h\n+++ b/drivers/bus/dpaa/rte_dpaa_bus.h\n@@ -132,7 +132,23 @@ static inline void *rte_dpaa_mem_ptov(phys_addr_t paddr)\n \t}\n \n \t/* If not, Fallback to full memseg list searching */\n-\treturn rte_mem_iova2virt(paddr);\n+\tva = rte_mem_iova2virt(paddr);\n+\n+\tdpaax_iova_table_update(paddr, va, RTE_CACHE_LINE_SIZE);\n+\n+\treturn va;\n+}\n+\n+static inline rte_iova_t\n+rte_dpaa_mem_vtop(void *vaddr)\n+{\n+\tconst struct rte_memseg *ms;\n+\n+\tms = rte_mem_virt2memseg(vaddr, NULL);\n+\tif (ms)\n+\t\treturn ms->iova + RTE_PTR_DIFF(vaddr, ms->addr);\n+\n+\treturn (size_t)NULL;\n }\n \n /**\ndiff --git a/drivers/crypto/dpaa_sec/dpaa_sec.c b/drivers/crypto/dpaa_sec/dpaa_sec.c\nindex e0b307cec..df684d265 100644\n--- a/drivers/crypto/dpaa_sec/dpaa_sec.c\n+++ b/drivers/crypto/dpaa_sec/dpaa_sec.c\n@@ -94,31 +94,6 @@ dpaa_sec_alloc_ctx(dpaa_sec_session *ses, int sg_count)\n \treturn ctx;\n }\n \n-static inline rte_iova_t\n-dpaa_mem_vtop(void *vaddr)\n-{\n-\tconst struct rte_memseg *ms;\n-\n-\tms = rte_mem_virt2memseg(vaddr, NULL);\n-\tif (ms) {\n-\t\tdpaax_iova_table_update(ms->iova, ms->addr, ms->len);\n-\t\treturn ms->iova + RTE_PTR_DIFF(vaddr, ms->addr);\n-\t}\n-\treturn (size_t)NULL;\n-}\n-\n-static inline void *\n-dpaa_mem_ptov(rte_iova_t paddr)\n-{\n-\tvoid *va;\n-\n-\tva = (void *)dpaax_iova_table_get_va(paddr);\n-\tif (likely(va))\n-\t\treturn va;\n-\n-\treturn rte_mem_iova2virt(paddr);\n-}\n-\n static void\n ern_sec_fq_handler(struct qman_portal *qm __rte_unused,\n \t\t   struct qman_fq *fq,\n@@ -183,7 +158,7 @@ dqrr_out_fq_cb_rx(struct qman_portal *qm __always_unused,\n \t * sg[0] is for output\n \t * sg[1] for input\n \t */\n-\tjob = dpaa_mem_ptov(qm_fd_addr_get64(fd));\n+\tjob = rte_dpaa_mem_ptov(qm_fd_addr_get64(fd));\n \n \tctx = container_of(job, struct dpaa_sec_op_ctx, job);\n \tctx->fd_status = fd->status;\n@@ -304,12 +279,12 @@ dpaa_sec_prep_pdcp_cdb(dpaa_sec_session *ses)\n \n \tif (!(cdb->sh_desc[2] & 1) && cipherdata.keylen) {\n \t\tcipherdata.key =\n-\t\t\t(size_t)dpaa_mem_vtop((void *)(size_t)cipherdata.key);\n+\t\t\t(size_t)rte_dpaa_mem_vtop((void *)(size_t)cipherdata.key);\n \t\tcipherdata.key_type = RTA_DATA_PTR;\n \t}\n \tif (!(cdb->sh_desc[2] & (1 << 1)) &&  authdata.keylen) {\n \t\tauthdata.key =\n-\t\t\t(size_t)dpaa_mem_vtop((void *)(size_t)authdata.key);\n+\t\t\t(size_t)rte_dpaa_mem_vtop((void *)(size_t)authdata.key);\n \t\tauthdata.key_type = RTA_DATA_PTR;\n \t}\n \n@@ -405,14 +380,14 @@ dpaa_sec_prep_ipsec_cdb(dpaa_sec_session *ses)\n \tif (cdb->sh_desc[2] & 1)\n \t\tcipherdata.key_type = RTA_DATA_IMM;\n \telse {\n-\t\tcipherdata.key = (size_t)dpaa_mem_vtop(\n+\t\tcipherdata.key = (size_t)rte_dpaa_mem_vtop(\n \t\t\t\t\t(void *)(size_t)cipherdata.key);\n \t\tcipherdata.key_type = RTA_DATA_PTR;\n \t}\n \tif (cdb->sh_desc[2] & (1<<1))\n \t\tauthdata.key_type = RTA_DATA_IMM;\n \telse {\n-\t\tauthdata.key = (size_t)dpaa_mem_vtop(\n+\t\tauthdata.key = (size_t)rte_dpaa_mem_vtop(\n \t\t\t\t\t(void *)(size_t)authdata.key);\n \t\tauthdata.key_type = RTA_DATA_PTR;\n \t}\n@@ -591,14 +566,14 @@ dpaa_sec_prep_cdb(dpaa_sec_session *ses)\n \t\tif (cdb->sh_desc[2] & 1)\n \t\t\talginfo_c.key_type = RTA_DATA_IMM;\n \t\telse {\n-\t\t\talginfo_c.key = (size_t)dpaa_mem_vtop(\n+\t\t\talginfo_c.key = (size_t)rte_dpaa_mem_vtop(\n \t\t\t\t\t\t(void *)(size_t)alginfo_c.key);\n \t\t\talginfo_c.key_type = RTA_DATA_PTR;\n \t\t}\n \t\tif (cdb->sh_desc[2] & (1<<1))\n \t\t\talginfo_a.key_type = RTA_DATA_IMM;\n \t\telse {\n-\t\t\talginfo_a.key = (size_t)dpaa_mem_vtop(\n+\t\t\talginfo_a.key = (size_t)rte_dpaa_mem_vtop(\n \t\t\t\t\t\t(void *)(size_t)alginfo_a.key);\n \t\t\talginfo_a.key_type = RTA_DATA_PTR;\n \t\t}\n@@ -674,7 +649,7 @@ dpaa_sec_deq(struct dpaa_sec_qp *qp, struct rte_crypto_op **ops, int nb_ops)\n \t\t * sg[0] is for output\n \t\t * sg[1] for input\n \t\t */\n-\t\tjob = dpaa_mem_ptov(qm_fd_addr_get64(fd));\n+\t\tjob = rte_dpaa_mem_ptov(qm_fd_addr_get64(fd));\n \n \t\tctx = container_of(job, struct dpaa_sec_op_ctx, job);\n \t\tctx->fd_status = fd->status;\n@@ -768,7 +743,7 @@ build_auth_only_sg(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \tin_sg->extension = 1;\n \tin_sg->final = 1;\n \tin_sg->length = data_len;\n-\tqm_sg_entry_set64(in_sg, dpaa_mem_vtop(&cf->sg[2]));\n+\tqm_sg_entry_set64(in_sg, rte_dpaa_mem_vtop(&cf->sg[2]));\n \n \t/* 1st seg */\n \tsg = in_sg + 1;\n@@ -788,7 +763,7 @@ build_auth_only_sg(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t\t} else {\n \t\t\tsg->length = ses->iv.length;\n \t\t}\n-\t\tqm_sg_entry_set64(sg, dpaa_mem_vtop(iv_ptr));\n+\t\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(iv_ptr));\n \t\tin_sg->length += sg->length;\n \t\tcpu_to_hw_sg(sg);\n \t\tsg++;\n@@ -821,7 +796,7 @@ build_auth_only_sg(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t\tsg++;\n \t\trte_memcpy(old_digest, sym->auth.digest.data,\n \t\t\t\tses->digest_length);\n-\t\tstart_addr = dpaa_mem_vtop(old_digest);\n+\t\tstart_addr = rte_dpaa_mem_vtop(old_digest);\n \t\tqm_sg_entry_set64(sg, start_addr);\n \t\tsg->length = ses->digest_length;\n \t\tin_sg->length += ses->digest_length;\n@@ -888,7 +863,7 @@ build_auth_only(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \tin_sg->extension = 1;\n \tin_sg->final = 1;\n \tin_sg->length = data_len;\n-\tqm_sg_entry_set64(in_sg, dpaa_mem_vtop(&cf->sg[2]));\n+\tqm_sg_entry_set64(in_sg, rte_dpaa_mem_vtop(&cf->sg[2]));\n \tsg = &cf->sg[2];\n \n \tif (ses->iv.length) {\n@@ -906,7 +881,7 @@ build_auth_only(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t\t} else {\n \t\t\tsg->length = ses->iv.length;\n \t\t}\n-\t\tqm_sg_entry_set64(sg, dpaa_mem_vtop(iv_ptr));\n+\t\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(iv_ptr));\n \t\tin_sg->length += sg->length;\n \t\tcpu_to_hw_sg(sg);\n \t\tsg++;\n@@ -923,7 +898,7 @@ build_auth_only(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t\trte_memcpy(old_digest, sym->auth.digest.data,\n \t\t\t\tses->digest_length);\n \t\t/* let's check digest by hw */\n-\t\tstart_addr = dpaa_mem_vtop(old_digest);\n+\t\tstart_addr = rte_dpaa_mem_vtop(old_digest);\n \t\tsg++;\n \t\tqm_sg_entry_set64(sg, start_addr);\n \t\tsg->length = ses->digest_length;\n@@ -987,7 +962,7 @@ build_cipher_only_sg(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \tout_sg = &cf->sg[0];\n \tout_sg->extension = 1;\n \tout_sg->length = data_len;\n-\tqm_sg_entry_set64(out_sg, dpaa_mem_vtop(&cf->sg[2]));\n+\tqm_sg_entry_set64(out_sg, rte_dpaa_mem_vtop(&cf->sg[2]));\n \tcpu_to_hw_sg(out_sg);\n \n \t/* 1st seg */\n@@ -1016,11 +991,11 @@ build_cipher_only_sg(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \tin_sg->length = data_len + ses->iv.length;\n \n \tsg++;\n-\tqm_sg_entry_set64(in_sg, dpaa_mem_vtop(sg));\n+\tqm_sg_entry_set64(in_sg, rte_dpaa_mem_vtop(sg));\n \tcpu_to_hw_sg(in_sg);\n \n \t/* IV */\n-\tqm_sg_entry_set64(sg, dpaa_mem_vtop(IV_ptr));\n+\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(IV_ptr));\n \tsg->length = ses->iv.length;\n \tcpu_to_hw_sg(sg);\n \n@@ -1098,11 +1073,11 @@ build_cipher_only(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \tsg->extension = 1;\n \tsg->final = 1;\n \tsg->length = data_len + ses->iv.length;\n-\tqm_sg_entry_set64(sg, dpaa_mem_vtop(&cf->sg[2]));\n+\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(&cf->sg[2]));\n \tcpu_to_hw_sg(sg);\n \n \tsg = &cf->sg[2];\n-\tqm_sg_entry_set64(sg, dpaa_mem_vtop(IV_ptr));\n+\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(IV_ptr));\n \tsg->length = ses->iv.length;\n \tcpu_to_hw_sg(sg);\n \n@@ -1163,7 +1138,7 @@ build_cipher_auth_gcm_sg(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \n \t/* output sg entries */\n \tsg = &cf->sg[2];\n-\tqm_sg_entry_set64(out_sg, dpaa_mem_vtop(sg));\n+\tqm_sg_entry_set64(out_sg, rte_dpaa_mem_vtop(sg));\n \tcpu_to_hw_sg(out_sg);\n \n \t/* 1st seg */\n@@ -1206,18 +1181,18 @@ build_cipher_auth_gcm_sg(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \n \t/* input sg entries */\n \tsg++;\n-\tqm_sg_entry_set64(in_sg, dpaa_mem_vtop(sg));\n+\tqm_sg_entry_set64(in_sg, rte_dpaa_mem_vtop(sg));\n \tcpu_to_hw_sg(in_sg);\n \n \t/* 1st seg IV */\n-\tqm_sg_entry_set64(sg, dpaa_mem_vtop(IV_ptr));\n+\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(IV_ptr));\n \tsg->length = ses->iv.length;\n \tcpu_to_hw_sg(sg);\n \n \t/* 2nd seg auth only */\n \tif (ses->auth_only_len) {\n \t\tsg++;\n-\t\tqm_sg_entry_set64(sg, dpaa_mem_vtop(sym->aead.aad.data));\n+\t\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(sym->aead.aad.data));\n \t\tsg->length = ses->auth_only_len;\n \t\tcpu_to_hw_sg(sg);\n \t}\n@@ -1243,7 +1218,7 @@ build_cipher_auth_gcm_sg(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t\tsg++;\n \t\tmemcpy(ctx->digest, sym->aead.digest.data,\n \t\t\tses->digest_length);\n-\t\tqm_sg_entry_set64(sg, dpaa_mem_vtop(ctx->digest));\n+\t\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(ctx->digest));\n \t\tsg->length = ses->digest_length;\n \t}\n \tsg->final = 1;\n@@ -1281,9 +1256,9 @@ build_cipher_auth_gcm(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t/* input */\n \trte_prefetch0(cf->sg);\n \tsg = &cf->sg[2];\n-\tqm_sg_entry_set64(&cf->sg[1], dpaa_mem_vtop(sg));\n+\tqm_sg_entry_set64(&cf->sg[1], rte_dpaa_mem_vtop(sg));\n \tif (is_encode(ses)) {\n-\t\tqm_sg_entry_set64(sg, dpaa_mem_vtop(IV_ptr));\n+\t\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(IV_ptr));\n \t\tsg->length = ses->iv.length;\n \t\tlength += sg->length;\n \t\tcpu_to_hw_sg(sg);\n@@ -1291,7 +1266,7 @@ build_cipher_auth_gcm(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t\tsg++;\n \t\tif (ses->auth_only_len) {\n \t\t\tqm_sg_entry_set64(sg,\n-\t\t\t\t\t  dpaa_mem_vtop(sym->aead.aad.data));\n+\t\t\t\t\t  rte_dpaa_mem_vtop(sym->aead.aad.data));\n \t\t\tsg->length = ses->auth_only_len;\n \t\t\tlength += sg->length;\n \t\t\tcpu_to_hw_sg(sg);\n@@ -1303,7 +1278,7 @@ build_cipher_auth_gcm(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t\tsg->final = 1;\n \t\tcpu_to_hw_sg(sg);\n \t} else {\n-\t\tqm_sg_entry_set64(sg, dpaa_mem_vtop(IV_ptr));\n+\t\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(IV_ptr));\n \t\tsg->length = ses->iv.length;\n \t\tlength += sg->length;\n \t\tcpu_to_hw_sg(sg);\n@@ -1311,7 +1286,7 @@ build_cipher_auth_gcm(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t\tsg++;\n \t\tif (ses->auth_only_len) {\n \t\t\tqm_sg_entry_set64(sg,\n-\t\t\t\t\t  dpaa_mem_vtop(sym->aead.aad.data));\n+\t\t\t\t\t  rte_dpaa_mem_vtop(sym->aead.aad.data));\n \t\t\tsg->length = ses->auth_only_len;\n \t\t\tlength += sg->length;\n \t\t\tcpu_to_hw_sg(sg);\n@@ -1326,7 +1301,7 @@ build_cipher_auth_gcm(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t\t       ses->digest_length);\n \t\tsg++;\n \n-\t\tqm_sg_entry_set64(sg, dpaa_mem_vtop(ctx->digest));\n+\t\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(ctx->digest));\n \t\tsg->length = ses->digest_length;\n \t\tlength += sg->length;\n \t\tsg->final = 1;\n@@ -1340,7 +1315,7 @@ build_cipher_auth_gcm(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \n \t/* output */\n \tsg++;\n-\tqm_sg_entry_set64(&cf->sg[0], dpaa_mem_vtop(sg));\n+\tqm_sg_entry_set64(&cf->sg[0], rte_dpaa_mem_vtop(sg));\n \tqm_sg_entry_set64(sg,\n \t\tdst_start_addr + sym->aead.data.offset);\n \tsg->length = sym->aead.data.length;\n@@ -1409,7 +1384,7 @@ build_cipher_auth_sg(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \n \t/* output sg entries */\n \tsg = &cf->sg[2];\n-\tqm_sg_entry_set64(out_sg, dpaa_mem_vtop(sg));\n+\tqm_sg_entry_set64(out_sg, rte_dpaa_mem_vtop(sg));\n \tcpu_to_hw_sg(out_sg);\n \n \t/* 1st seg */\n@@ -1451,11 +1426,11 @@ build_cipher_auth_sg(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \n \t/* input sg entries */\n \tsg++;\n-\tqm_sg_entry_set64(in_sg, dpaa_mem_vtop(sg));\n+\tqm_sg_entry_set64(in_sg, rte_dpaa_mem_vtop(sg));\n \tcpu_to_hw_sg(in_sg);\n \n \t/* 1st seg IV */\n-\tqm_sg_entry_set64(sg, dpaa_mem_vtop(IV_ptr));\n+\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(IV_ptr));\n \tsg->length = ses->iv.length;\n \tcpu_to_hw_sg(sg);\n \n@@ -1481,7 +1456,7 @@ build_cipher_auth_sg(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t\tsg++;\n \t\tmemcpy(ctx->digest, sym->auth.digest.data,\n \t\t\tses->digest_length);\n-\t\tqm_sg_entry_set64(sg, dpaa_mem_vtop(ctx->digest));\n+\t\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(ctx->digest));\n \t\tsg->length = ses->digest_length;\n \t}\n \tsg->final = 1;\n@@ -1518,9 +1493,9 @@ build_cipher_auth(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t/* input */\n \trte_prefetch0(cf->sg);\n \tsg = &cf->sg[2];\n-\tqm_sg_entry_set64(&cf->sg[1], dpaa_mem_vtop(sg));\n+\tqm_sg_entry_set64(&cf->sg[1], rte_dpaa_mem_vtop(sg));\n \tif (is_encode(ses)) {\n-\t\tqm_sg_entry_set64(sg, dpaa_mem_vtop(IV_ptr));\n+\t\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(IV_ptr));\n \t\tsg->length = ses->iv.length;\n \t\tlength += sg->length;\n \t\tcpu_to_hw_sg(sg);\n@@ -1532,7 +1507,7 @@ build_cipher_auth(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t\tsg->final = 1;\n \t\tcpu_to_hw_sg(sg);\n \t} else {\n-\t\tqm_sg_entry_set64(sg, dpaa_mem_vtop(IV_ptr));\n+\t\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(IV_ptr));\n \t\tsg->length = ses->iv.length;\n \t\tlength += sg->length;\n \t\tcpu_to_hw_sg(sg);\n@@ -1548,7 +1523,7 @@ build_cipher_auth(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t\t       ses->digest_length);\n \t\tsg++;\n \n-\t\tqm_sg_entry_set64(sg, dpaa_mem_vtop(ctx->digest));\n+\t\tqm_sg_entry_set64(sg, rte_dpaa_mem_vtop(ctx->digest));\n \t\tsg->length = ses->digest_length;\n \t\tlength += sg->length;\n \t\tsg->final = 1;\n@@ -1562,7 +1537,7 @@ build_cipher_auth(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \n \t/* output */\n \tsg++;\n-\tqm_sg_entry_set64(&cf->sg[0], dpaa_mem_vtop(sg));\n+\tqm_sg_entry_set64(&cf->sg[0], rte_dpaa_mem_vtop(sg));\n \tqm_sg_entry_set64(sg, dst_start_addr + sym->cipher.data.offset);\n \tsg->length = sym->cipher.data.length;\n \tlength = sg->length;\n@@ -1656,7 +1631,7 @@ build_proto_sg(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \t/* output */\n \tout_sg = &cf->sg[0];\n \tout_sg->extension = 1;\n-\tqm_sg_entry_set64(out_sg, dpaa_mem_vtop(&cf->sg[2]));\n+\tqm_sg_entry_set64(out_sg, rte_dpaa_mem_vtop(&cf->sg[2]));\n \n \t/* 1st seg */\n \tsg = &cf->sg[2];\n@@ -1689,7 +1664,7 @@ build_proto_sg(struct rte_crypto_op *op, dpaa_sec_session *ses)\n \tin_len = mbuf->data_len;\n \n \tsg++;\n-\tqm_sg_entry_set64(in_sg, dpaa_mem_vtop(sg));\n+\tqm_sg_entry_set64(in_sg, rte_dpaa_mem_vtop(sg));\n \n \t/* 1st seg */\n \tqm_sg_entry_set64(sg, rte_pktmbuf_mtophys(mbuf));\n@@ -1884,7 +1859,7 @@ dpaa_sec_enqueue_burst(void *qp, struct rte_crypto_op **ops,\n \t\t\tinq[loop] = ses->inq[rte_lcore_id() % MAX_DPAA_CORES];\n \t\t\tfd->opaque_addr = 0;\n \t\t\tfd->cmd = 0;\n-\t\t\tqm_fd_addr_set64(fd, dpaa_mem_vtop(cf->sg));\n+\t\t\tqm_fd_addr_set64(fd, rte_dpaa_mem_vtop(cf->sg));\n \t\t\tfd->_format1 = qm_fd_compound;\n \t\t\tfd->length29 = 2 * sizeof(struct qm_sg_entry);\n \n@@ -2349,7 +2324,7 @@ dpaa_sec_attach_sess_q(struct dpaa_sec_qp *qp, dpaa_sec_session *sess)\n \t\t}\n \t}\n \tret = dpaa_sec_init_rx(sess->inq[rte_lcore_id() % MAX_DPAA_CORES],\n-\t\t\t       dpaa_mem_vtop(&sess->cdb),\n+\t\t\t       rte_dpaa_mem_vtop(&sess->cdb),\n \t\t\t       qman_fq_fqid(&qp->outq));\n \tif (ret)\n \t\tDPAA_SEC_ERR(\"Unable to init sec queue\");\n@@ -3149,7 +3124,7 @@ dpaa_sec_process_parallel_event(void *event,\n \t * sg[0] is for output\n \t * sg[1] for input\n \t */\n-\tjob = dpaa_mem_ptov(qm_fd_addr_get64(fd));\n+\tjob = rte_dpaa_mem_ptov(qm_fd_addr_get64(fd));\n \n \tctx = container_of(job, struct dpaa_sec_op_ctx, job);\n \tctx->fd_status = fd->status;\n@@ -3204,7 +3179,7 @@ dpaa_sec_process_atomic_event(void *event,\n \t * sg[0] is for output\n \t * sg[1] for input\n \t */\n-\tjob = dpaa_mem_ptov(qm_fd_addr_get64(fd));\n+\tjob = rte_dpaa_mem_ptov(qm_fd_addr_get64(fd));\n \n \tctx = container_of(job, struct dpaa_sec_op_ctx, job);\n \tctx->fd_status = fd->status;\ndiff --git a/drivers/crypto/dpaa_sec/meson.build b/drivers/crypto/dpaa_sec/meson.build\nindex 9f17d3a43..71de81940 100644\n--- a/drivers/crypto/dpaa_sec/meson.build\n+++ b/drivers/crypto/dpaa_sec/meson.build\n@@ -6,7 +6,7 @@ if not is_linux\n \treason = 'only supported on linux'\n endif\n \n-deps += ['bus_dpaa', 'security']\n+deps += ['bus_dpaa', 'mempool_dpaa', 'security']\n sources = files('dpaa_sec.c')\n \n allow_experimental_apis = true\n",
    "prefixes": [
        "1/2"
    ]
}