get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 58294,
    "url": "https://patches.dpdk.org/api/patches/58294/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/1567146501-8224-8-git-send-email-anoobj@marvell.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": "<1567146501-8224-8-git-send-email-anoobj@marvell.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1567146501-8224-8-git-send-email-anoobj@marvell.com",
    "date": "2019-08-30T06:28:17",
    "name": "[07/11] crypto/octeontx2: add session related functions",
    "commit_ref": null,
    "pull_url": null,
    "state": "changes-requested",
    "archived": true,
    "hash": "62c273a3b290cd5492499b9a363cb4cb3e225e0b",
    "submitter": {
        "id": 1205,
        "url": "https://patches.dpdk.org/api/people/1205/?format=api",
        "name": "Anoob Joseph",
        "email": "anoobj@marvell.com"
    },
    "delegate": {
        "id": 6690,
        "url": "https://patches.dpdk.org/api/users/6690/?format=api",
        "username": "akhil",
        "first_name": "akhil",
        "last_name": "goyal",
        "email": "gakhil@marvell.com"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/1567146501-8224-8-git-send-email-anoobj@marvell.com/mbox/",
    "series": [
        {
            "id": 6176,
            "url": "https://patches.dpdk.org/api/series/6176/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=6176",
            "date": "2019-08-30T06:28:10",
            "name": "add OCTEON TX2 crypto PMD",
            "version": 1,
            "mbox": "https://patches.dpdk.org/series/6176/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/58294/comments/",
    "check": "success",
    "checks": "https://patches.dpdk.org/api/patches/58294/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@dpdk.org",
        "Delivered-To": "patchwork@dpdk.org",
        "Received": [
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 792741E8C2;\n\tFri, 30 Aug 2019 08:32:31 +0200 (CEST)",
            "from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com\n\t[67.231.148.174]) by dpdk.org (Postfix) with ESMTP id BF44A1E8BD\n\tfor <dev@dpdk.org>; Fri, 30 Aug 2019 08:32:29 +0200 (CEST)",
            "from pps.filterd (m0045849.ppops.net [127.0.0.1])\n\tby mx0a-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id\n\tx7U6TcTl024096; Thu, 29 Aug 2019 23:32:29 -0700",
            "from sc-exch02.marvell.com ([199.233.58.182])\n\tby mx0a-0016f401.pphosted.com with ESMTP id 2upmepj414-1\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); \n\tThu, 29 Aug 2019 23:32:28 -0700",
            "from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH02.marvell.com\n\t(10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1367.3;\n\tThu, 29 Aug 2019 23:32:27 -0700",
            "from maili.marvell.com (10.93.176.43) by SC-EXCH03.marvell.com\n\t(10.93.176.83) with Microsoft SMTP Server id 15.0.1367.3 via Frontend\n\tTransport; Thu, 29 Aug 2019 23:32:27 -0700",
            "from ajoseph83.caveonetworks.com.com (unknown [10.29.45.56])\n\tby maili.marvell.com (Postfix) with ESMTP id BF4C13F703F;\n\tThu, 29 Aug 2019 23:32:24 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com;\n\th=from : to : cc :\n\tsubject : date : message-id : in-reply-to : references : mime-version\n\t: content-transfer-encoding : content-type; s=pfpt0818;\n\tbh=CCZI/aEVlnjo6X+ocIS7QmseGiczwNsOfFgjUmSqBIk=;\n\tb=tFN3PJvxn1vHFdzpKCtmHrG8xQSexJbIz+RQoSdSwQuw8aYCOOUj/q7MjmK/usMc6KHd\n\t83WqmsPCRKm4OyM+F1AAakueaycFQ7nzElV2bST1t8Q/hdBBv9DBDbfda4e2rN+hSCUM\n\tq4W73KCidDrMXBH1o61IMd4CRZORSurgULdicmWzCC5rxI+JQdCtGnC0tGa3x4wwtbCk\n\t98v43LZqi+cnpHSknKur3rbpF6rLYEWSG5nBfualGffLHHRJe507Zef2mbA2Yd5bnMag\n\tQiv+8tmjqvC7eYP0NsK7eMsqrIv/S9O+TeL5blXFDBPzBfk5oY4AuhJs58H2tuBuv6Mn\n\tlw== ",
        "From": "Anoob Joseph <anoobj@marvell.com>",
        "To": "Akhil Goyal <akhil.goyal@nxp.com>, Pablo de Lara\n\t<pablo.de.lara.guarch@intel.com>, Thomas Monjalon <thomas@monjalon.net>",
        "CC": "Ankur Dwivedi <adwivedi@marvell.com>, Jerin Jacob <jerinj@marvell.com>, \n\tNarayana Prasad <pathreya@marvell.com>, Anoob Joseph <anoobj@marvell.com>,\n\tTejasree Kondoj <ktejasree@marvell.com>, <dev@dpdk.org>",
        "Date": "Fri, 30 Aug 2019 11:58:17 +0530",
        "Message-ID": "<1567146501-8224-8-git-send-email-anoobj@marvell.com>",
        "X-Mailer": "git-send-email 2.7.4",
        "In-Reply-To": "<1567146501-8224-1-git-send-email-anoobj@marvell.com>",
        "References": "<1567146501-8224-1-git-send-email-anoobj@marvell.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-Proofpoint-Virus-Version": "vendor=fsecure engine=2.50.10434:6.0.70,1.0.8\n\tdefinitions=2019-08-30_02:2019-08-29,2019-08-30 signatures=0",
        "Subject": "[dpdk-dev] [PATCH 07/11] crypto/octeontx2: add session related\n\tfunctions",
        "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\t<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\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "From: Ankur Dwivedi <adwivedi@marvell.com>\n\nThis patch adds the symmetric session related callbacks.\n\nSigned-off-by: Ankur Dwivedi <adwivedi@marvell.com>\nSigned-off-by: Anoob Joseph <anoobj@marvell.com>\nSigned-off-by: Tejasree Kondoj <ktejasree@marvell.com>\n---\n drivers/common/cpt/cpt_mcode_defines.h        |   2 +\n drivers/crypto/octeontx2/otx2_cryptodev_ops.c | 117 +++++++++++++++++++++++++-\n drivers/crypto/octeontx2/otx2_cryptodev_ops.h |   5 ++\n 3 files changed, 121 insertions(+), 3 deletions(-)",
    "diff": "diff --git a/drivers/common/cpt/cpt_mcode_defines.h b/drivers/common/cpt/cpt_mcode_defines.h\nindex b7c3feb..c197c7b 100644\n--- a/drivers/common/cpt/cpt_mcode_defines.h\n+++ b/drivers/common/cpt/cpt_mcode_defines.h\n@@ -213,6 +213,8 @@ struct cpt_sess_misc {\n \tuint16_t is_null:1;\n \t/** Flag for GMAC */\n \tuint16_t is_gmac:1;\n+\t/** Engine group */\n+\tuint16_t egrp:3;\n \t/** AAD length */\n \tuint16_t aad_length;\n \t/** MAC len in bytes */\ndiff --git a/drivers/crypto/octeontx2/otx2_cryptodev_ops.c b/drivers/crypto/octeontx2/otx2_cryptodev_ops.c\nindex b2d459e..fcfcf1a 100644\n--- a/drivers/crypto/octeontx2/otx2_cryptodev_ops.c\n+++ b/drivers/crypto/octeontx2/otx2_cryptodev_ops.c\n@@ -10,6 +10,7 @@\n #include \"cpt_hw_types.h\"\n #include \"cpt_pmd_logs.h\"\n #include \"cpt_pmd_ops_helper.h\"\n+#include \"cpt_ucode.h\"\n \n #include \"otx2_cryptodev.h\"\n #include \"otx2_cryptodev_capabilities.h\"\n@@ -244,6 +245,90 @@ otx2_cpt_qp_destroy(const struct rte_cryptodev *dev, struct otx2_cpt_qp *qp)\n \treturn 0;\n }\n \n+static int\n+sym_session_configure(int driver_id, struct rte_crypto_sym_xform *xform,\n+\t\t      struct rte_cryptodev_sym_session *sess,\n+\t\t      struct rte_mempool *pool)\n+{\n+\tstruct cpt_sess_misc *misc;\n+\tvoid *priv;\n+\tint ret;\n+\n+\tif (unlikely(cpt_is_algo_supported(xform))) {\n+\t\tCPT_LOG_ERR(\"Crypto xform not supported\");\n+\t\treturn -ENOTSUP;\n+\t}\n+\n+\tif (unlikely(rte_mempool_get(pool, &priv))) {\n+\t\tCPT_LOG_ERR(\"Could not allocate session private data\");\n+\t\treturn -ENOMEM;\n+\t}\n+\n+\tmisc = priv;\n+\n+\tfor ( ; xform != NULL; xform = xform->next) {\n+\t\tswitch (xform->type) {\n+\t\tcase RTE_CRYPTO_SYM_XFORM_AEAD:\n+\t\t\tret = fill_sess_aead(xform, misc);\n+\t\t\tbreak;\n+\t\tcase RTE_CRYPTO_SYM_XFORM_CIPHER:\n+\t\t\tret = fill_sess_cipher(xform, misc);\n+\t\t\tbreak;\n+\t\tcase RTE_CRYPTO_SYM_XFORM_AUTH:\n+\t\t\tif (xform->auth.algo == RTE_CRYPTO_AUTH_AES_GMAC)\n+\t\t\t\tret = fill_sess_gmac(xform, misc);\n+\t\t\telse\n+\t\t\t\tret = fill_sess_auth(xform, misc);\n+\t\t\tbreak;\n+\t\tdefault:\n+\t\t\tret = -1;\n+\t\t}\n+\n+\t\tif (ret)\n+\t\t\tgoto priv_put;\n+\t}\n+\n+\tset_sym_session_private_data(sess, driver_id, misc);\n+\n+\tmisc->ctx_dma_addr = rte_mempool_virt2iova(misc) +\n+\t\t\t     sizeof(struct cpt_sess_misc);\n+\n+\t/*\n+\t * IE engines support IPsec operations\n+\t * SE engines support IPsec operations and Air-Crypto operations\n+\t */\n+\tif (misc->zsk_flag)\n+\t\tmisc->egrp = OTX2_CPT_EGRP_SE;\n+\telse\n+\t\tmisc->egrp = OTX2_CPT_EGRP_SE_IE;\n+\n+\treturn 0;\n+\n+priv_put:\n+\trte_mempool_put(pool, priv);\n+\n+\tCPT_LOG_ERR(\"Crypto xform not supported\");\n+\treturn -ENOTSUP;\n+}\n+\n+static void\n+sym_session_clear(int driver_id, struct rte_cryptodev_sym_session *sess)\n+{\n+\tvoid *priv = get_sym_session_private_data(sess, driver_id);\n+\tstruct rte_mempool *pool;\n+\n+\tif (priv == NULL)\n+\t\treturn;\n+\n+\tmemset(priv, 0, cpt_get_session_size());\n+\n+\tpool = rte_mempool_from_obj(priv);\n+\n+\tset_sym_session_private_data(sess, driver_id, NULL);\n+\n+\trte_mempool_put(pool, priv);\n+}\n+\n /* PMD ops */\n \n static int\n@@ -420,6 +505,32 @@ otx2_cpt_queue_pair_release(struct rte_cryptodev *dev, uint16_t qp_id)\n \treturn 0;\n }\n \n+static unsigned int\n+otx2_cpt_sym_session_get_size(struct rte_cryptodev *dev __rte_unused)\n+{\n+\treturn cpt_get_session_size();\n+}\n+\n+static int\n+otx2_cpt_sym_session_configure(struct rte_cryptodev *dev,\n+\t\t\t       struct rte_crypto_sym_xform *xform,\n+\t\t\t       struct rte_cryptodev_sym_session *sess,\n+\t\t\t       struct rte_mempool *pool)\n+{\n+\tCPT_PMD_INIT_FUNC_TRACE();\n+\n+\treturn sym_session_configure(dev->driver_id, xform, sess, pool);\n+}\n+\n+static void\n+otx2_cpt_sym_session_clear(struct rte_cryptodev *dev,\n+\t\t\t   struct rte_cryptodev_sym_session *sess)\n+{\n+\tCPT_PMD_INIT_FUNC_TRACE();\n+\n+\treturn sym_session_clear(dev->driver_id, sess);\n+}\n+\n struct rte_cryptodev_ops otx2_cpt_ops = {\n \t/* Device control ops */\n \t.dev_configure = otx2_cpt_dev_config,\n@@ -435,7 +546,7 @@ struct rte_cryptodev_ops otx2_cpt_ops = {\n \t.queue_pair_count = NULL,\n \n \t/* Symmetric crypto ops */\n-\t.sym_session_get_size = NULL,\n-\t.sym_session_configure = NULL,\n-\t.sym_session_clear = NULL,\n+\t.sym_session_get_size = otx2_cpt_sym_session_get_size,\n+\t.sym_session_configure = otx2_cpt_sym_session_configure,\n+\t.sym_session_clear = otx2_cpt_sym_session_clear,\n };\ndiff --git a/drivers/crypto/octeontx2/otx2_cryptodev_ops.h b/drivers/crypto/octeontx2/otx2_cryptodev_ops.h\nindex 9bd24e7..ba93a66 100644\n--- a/drivers/crypto/octeontx2/otx2_cryptodev_ops.h\n+++ b/drivers/crypto/octeontx2/otx2_cryptodev_ops.h\n@@ -10,6 +10,11 @@\n #define OTX2_CPT_MIN_HEADROOM_REQ\t24\n #define OTX2_CPT_MIN_TAILROOM_REQ\t8\n \n+enum otx2_cpt_egrp {\n+\tOTX2_CPT_EGRP_SE = 0,\n+\tOTX2_CPT_EGRP_SE_IE = 1,\n+};\n+\n struct rte_cryptodev_ops otx2_cpt_ops;\n \n #endif /* _OTX2_CRYPTODEV_OPS_H_ */\n",
    "prefixes": [
        "07/11"
    ]
}