get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 58403,
    "url": "https://patches.dpdk.org/api/patches/58403/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/20190902122747.1393-1-akhil.goyal@nxp.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": "<20190902122747.1393-1-akhil.goyal@nxp.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20190902122747.1393-1-akhil.goyal@nxp.com",
    "date": "2019-09-02T12:27:46",
    "name": "[1/2] crypto/caam_jr: reduce the function trace from critical path",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "06677d067dd66625122acad641a396d0f45500e4",
    "submitter": {
        "id": 517,
        "url": "https://patches.dpdk.org/api/people/517/?format=api",
        "name": "Akhil Goyal",
        "email": "akhil.goyal@nxp.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/20190902122747.1393-1-akhil.goyal@nxp.com/mbox/",
    "series": [
        {
            "id": 6202,
            "url": "https://patches.dpdk.org/api/series/6202/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=6202",
            "date": "2019-09-02T12:27:46",
            "name": "[1/2] crypto/caam_jr: reduce the function trace from critical path",
            "version": 1,
            "mbox": "https://patches.dpdk.org/series/6202/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/58403/comments/",
    "check": "success",
    "checks": "https://patches.dpdk.org/api/patches/58403/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 06B641E951;\n\tMon,  2 Sep 2019 14:42:03 +0200 (CEST)",
            "from inva021.nxp.com (inva021.nxp.com [92.121.34.21])\n\tby dpdk.org (Postfix) with ESMTP id A9A2C1DFE7\n\tfor <dev@dpdk.org>; Mon,  2 Sep 2019 14:42:01 +0200 (CEST)",
            "from inva021.nxp.com (localhost [127.0.0.1])\n\tby inva021.eu-rdc02.nxp.com (Postfix) with ESMTP id 8B4062006DD;\n\tMon,  2 Sep 2019 14:42:01 +0200 (CEST)",
            "from invc005.ap-rdc01.nxp.com (invc005.ap-rdc01.nxp.com\n\t[165.114.16.14])\n\tby inva021.eu-rdc02.nxp.com (Postfix) with ESMTP id E59532006CA;\n\tMon,  2 Sep 2019 14:41:59 +0200 (CEST)",
            "from GDB1.ap.freescale.net (GDB1.ap.freescale.net [10.232.132.179])\n\tby invc005.ap-rdc01.nxp.com (Postfix) with ESMTP id AE923402CB;\n\tMon,  2 Sep 2019 20:41:57 +0800 (SGT)"
        ],
        "From": "Akhil Goyal <akhil.goyal@nxp.com>",
        "To": "dev@dpdk.org",
        "Cc": "hemant.agrawal@nxp.com",
        "Date": "Mon,  2 Sep 2019 17:57:46 +0530",
        "Message-Id": "<20190902122747.1393-1-akhil.goyal@nxp.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "X-Virus-Scanned": "ClamAV using ClamSMTP",
        "Subject": "[dpdk-dev] [PATCH 1/2] crypto/caam_jr: reduce the function trace\n\tfrom critical path",
        "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: Hemant Agrawal <hemant.agrawal@nxp.com>\n\nReducing the functional traces from data path and critical session path\n\nSigned-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>\nAcked-by: Akhil Goyal <akhil.goyal@nxp.com>\n---\n drivers/crypto/caam_jr/caam_jr.c | 37 ++++----------------------------\n 1 file changed, 4 insertions(+), 33 deletions(-)",
    "diff": "diff --git a/drivers/crypto/caam_jr/caam_jr.c b/drivers/crypto/caam_jr/caam_jr.c\nindex 77c030347..e87c9895a 100644\n--- a/drivers/crypto/caam_jr/caam_jr.c\n+++ b/drivers/crypto/caam_jr/caam_jr.c\n@@ -28,8 +28,11 @@\n #include <hw/desc/common.h>\n #include <hw/desc/algo.h>\n #include <of.h>\n-\n+#ifdef RTE_LIBRTE_PMD_CAAM_JR_DEBUG\n+#define CAAM_JR_DBG\t1\n+#else\n #define CAAM_JR_DBG\t0\n+#endif\n #define CRYPTODEV_NAME_CAAM_JR_PMD\tcrypto_caam_jr\n static uint8_t cryptodev_driver_id;\n int caam_jr_logtype;\n@@ -62,14 +65,12 @@ struct sec_outring_entry {\n static inline phys_addr_t\n caam_jr_vtop_ctx(struct caam_jr_op_ctx *ctx, void *vaddr)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \treturn (size_t)vaddr - ctx->vtop_offset;\n }\n \n static inline void\n caam_jr_op_ending(struct caam_jr_op_ctx *ctx)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \t/* report op status to sym->op and then free the ctx memory  */\n \trte_mempool_put(ctx->ctx_pool, (void *)ctx);\n }\n@@ -80,7 +81,6 @@ caam_jr_alloc_ctx(struct caam_jr_session *ses)\n \tstruct caam_jr_op_ctx *ctx;\n \tint ret;\n \n-\tPMD_INIT_FUNC_TRACE();\n \tret = rte_mempool_get(ses->ctx_pool, (void **)(&ctx));\n \tif (!ctx || ret) {\n \t\tCAAM_JR_DP_WARN(\"Alloc sec descriptor failed!\");\n@@ -158,7 +158,6 @@ void caam_jr_stats_reset(struct rte_cryptodev *dev)\n static inline int\n is_cipher_only(struct caam_jr_session *ses)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \treturn ((ses->cipher_alg != RTE_CRYPTO_CIPHER_NULL) &&\n \t\t(ses->auth_alg == RTE_CRYPTO_AUTH_NULL));\n }\n@@ -166,7 +165,6 @@ is_cipher_only(struct caam_jr_session *ses)\n static inline int\n is_auth_only(struct caam_jr_session *ses)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \treturn ((ses->cipher_alg == RTE_CRYPTO_CIPHER_NULL) &&\n \t\t(ses->auth_alg != RTE_CRYPTO_AUTH_NULL));\n }\n@@ -174,7 +172,6 @@ is_auth_only(struct caam_jr_session *ses)\n static inline int\n is_aead(struct caam_jr_session *ses)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \treturn ((ses->cipher_alg == 0) &&\n \t\t(ses->auth_alg == 0) &&\n \t\t(ses->aead_alg != 0));\n@@ -183,7 +180,6 @@ is_aead(struct caam_jr_session *ses)\n static inline int\n is_auth_cipher(struct caam_jr_session *ses)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \treturn ((ses->cipher_alg != RTE_CRYPTO_CIPHER_NULL) &&\n \t\t(ses->auth_alg != RTE_CRYPTO_AUTH_NULL) &&\n \t\t(ses->proto_alg != RTE_SECURITY_PROTOCOL_IPSEC));\n@@ -192,28 +188,24 @@ is_auth_cipher(struct caam_jr_session *ses)\n static inline int\n is_proto_ipsec(struct caam_jr_session *ses)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \treturn (ses->proto_alg == RTE_SECURITY_PROTOCOL_IPSEC);\n }\n \n static inline int\n is_encode(struct caam_jr_session *ses)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \treturn ses->dir == DIR_ENC;\n }\n \n static inline int\n is_decode(struct caam_jr_session *ses)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \treturn ses->dir == DIR_DEC;\n }\n \n static inline void\n caam_auth_alg(struct caam_jr_session *ses, struct alginfo *alginfo_a)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \tswitch (ses->auth_alg) {\n \tcase RTE_CRYPTO_AUTH_NULL:\n \t\tses->digest_length = 0;\n@@ -262,7 +254,6 @@ caam_auth_alg(struct caam_jr_session *ses, struct alginfo *alginfo_a)\n static inline void\n caam_cipher_alg(struct caam_jr_session *ses, struct alginfo *alginfo_c)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \tswitch (ses->cipher_alg) {\n \tcase RTE_CRYPTO_CIPHER_NULL:\n \t\tbreak;\n@@ -292,7 +283,6 @@ caam_cipher_alg(struct caam_jr_session *ses, struct alginfo *alginfo_c)\n static inline void\n caam_aead_alg(struct caam_jr_session *ses, struct alginfo *alginfo)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \tswitch (ses->aead_alg) {\n \tcase RTE_CRYPTO_AEAD_AES_GCM:\n \t\talginfo->algtype = OP_ALG_ALGSEL_AES;\n@@ -317,7 +307,6 @@ caam_jr_prep_cdb(struct caam_jr_session *ses)\n \tint swap = true;\n #endif\n \n-\tPMD_INIT_FUNC_TRACE();\n \tif (ses->cdb)\n \t\tcaam_jr_dma_free(ses->cdb);\n \n@@ -505,7 +494,6 @@ hw_flush_job_ring(struct sec_job_ring_t *job_ring,\n \tint32_t jobs_no_to_discard = 0;\n \tint32_t discarded_descs_no = 0;\n \n-\tPMD_INIT_FUNC_TRACE();\n \tCAAM_JR_DEBUG(\"Jr[%p] pi[%d] ci[%d].Flushing jr notify desc=[%d]\",\n \t\tjob_ring, job_ring->pidx, job_ring->cidx, do_notify);\n \n@@ -559,7 +547,6 @@ hw_poll_job_ring(struct sec_job_ring_t *job_ring,\n \tphys_addr_t *temp_addr;\n \tstruct caam_jr_op_ctx *ctx;\n \n-\tPMD_INIT_FUNC_TRACE();\n \t/* TODO check for ops have memory*/\n \t/* check here if any JR error that cannot be written\n \t * in the output status word has occurred\n@@ -682,7 +669,6 @@ caam_jr_dequeue_burst(void *qp, struct rte_crypto_op **ops,\n \tint num_rx;\n \tint ret;\n \n-\tPMD_INIT_FUNC_TRACE();\n \tCAAM_JR_DP_DEBUG(\"Jr[%p]Polling. limit[%d]\", ring, nb_ops);\n \n \t/* Poll job ring\n@@ -739,7 +725,6 @@ build_auth_only_sg(struct rte_crypto_op *op, struct caam_jr_session *ses)\n \tstruct sec_job_descriptor_t *jobdescr;\n \tuint8_t extra_segs;\n \n-\tPMD_INIT_FUNC_TRACE();\n \tif (is_decode(ses))\n \t\textra_segs = 2;\n \telse\n@@ -824,7 +809,6 @@ build_auth_only(struct rte_crypto_op *op, struct caam_jr_session *ses)\n \tuint64_t sdesc_offset;\n \tstruct sec_job_descriptor_t *jobdescr;\n \n-\tPMD_INIT_FUNC_TRACE();\n \tctx = caam_jr_alloc_ctx(ses);\n \tif (!ctx)\n \t\treturn NULL;\n@@ -893,7 +877,6 @@ build_cipher_only_sg(struct rte_crypto_op *op, struct caam_jr_session *ses)\n \tstruct sec_job_descriptor_t *jobdescr;\n \tuint8_t reg_segs;\n \n-\tPMD_INIT_FUNC_TRACE();\n \tif (sym->m_dst) {\n \t\tmbuf = sym->m_dst;\n \t\treg_segs = mbuf->nb_segs + sym->m_src->nb_segs + 2;\n@@ -1008,7 +991,6 @@ build_cipher_only(struct rte_crypto_op *op, struct caam_jr_session *ses)\n \t\t\tses->iv.offset);\n \tstruct sec_job_descriptor_t *jobdescr;\n \n-\tPMD_INIT_FUNC_TRACE();\n \tctx = caam_jr_alloc_ctx(ses);\n \tif (!ctx)\n \t\treturn NULL;\n@@ -1086,7 +1068,6 @@ build_cipher_auth_sg(struct rte_crypto_op *op, struct caam_jr_session *ses)\n \tstruct sec_job_descriptor_t *jobdescr;\n \tuint32_t auth_only_len;\n \n-\tPMD_INIT_FUNC_TRACE();\n \tauth_only_len = op->sym->auth.data.length -\n \t\t\t\top->sym->cipher.data.length;\n \n@@ -1229,7 +1210,6 @@ build_cipher_auth(struct rte_crypto_op *op, struct caam_jr_session *ses)\n \tstruct sec_job_descriptor_t *jobdescr;\n \tuint32_t auth_only_len;\n \n-\tPMD_INIT_FUNC_TRACE();\n \tauth_only_len = op->sym->auth.data.length -\n \t\t\t\top->sym->cipher.data.length;\n \n@@ -1335,7 +1315,6 @@ build_proto(struct rte_crypto_op *op, struct caam_jr_session *ses)\n \tuint64_t sdesc_offset;\n \tstruct sec_job_descriptor_t *jobdescr;\n \n-\tPMD_INIT_FUNC_TRACE();\n \tctx = caam_jr_alloc_ctx(ses);\n \tif (!ctx)\n \t\treturn NULL;\n@@ -1376,7 +1355,6 @@ caam_jr_enqueue_op(struct rte_crypto_op *op, struct caam_jr_qp *qp)\n \tstruct caam_jr_op_ctx *ctx = NULL;\n \tstruct sec_job_descriptor_t *jobdescr __rte_unused;\n \n-\tPMD_INIT_FUNC_TRACE();\n \tswitch (op->sess_type) {\n \tcase RTE_CRYPTO_OP_WITH_SESSION:\n \t\tses = (struct caam_jr_session *)\n@@ -1497,8 +1475,6 @@ caam_jr_enqueue_burst(void *qp, struct rte_crypto_op **ops,\n \tint32_t ret;\n \tstruct caam_jr_qp *jr_qp = (struct caam_jr_qp *)qp;\n \tuint16_t num_tx = 0;\n-\n-\tPMD_INIT_FUNC_TRACE();\n \t/*Prepare each packet which is to be sent*/\n \tfor (loop = 0; loop < nb_ops; loop++) {\n \t\tret = caam_jr_enqueue_op(ops[loop], jr_qp);\n@@ -1586,7 +1562,6 @@ caam_jr_cipher_init(struct rte_cryptodev *dev __rte_unused,\n \t\t    struct rte_crypto_sym_xform *xform,\n \t\t    struct caam_jr_session *session)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \tsession->cipher_alg = xform->cipher.algo;\n \tsession->iv.length = xform->cipher.iv.length;\n \tsession->iv.offset = xform->cipher.iv.offset;\n@@ -1611,7 +1586,6 @@ caam_jr_auth_init(struct rte_cryptodev *dev __rte_unused,\n \t\t  struct rte_crypto_sym_xform *xform,\n \t\t  struct caam_jr_session *session)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \tsession->auth_alg = xform->auth.algo;\n \tsession->auth_key.data = rte_zmalloc(NULL, xform->auth.key.length,\n \t\t\t\t\t     RTE_CACHE_LINE_SIZE);\n@@ -1635,7 +1609,6 @@ caam_jr_aead_init(struct rte_cryptodev *dev __rte_unused,\n \t\t  struct rte_crypto_sym_xform *xform,\n \t\t  struct caam_jr_session *session)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \tsession->aead_alg = xform->aead.algo;\n \tsession->iv.length = xform->aead.iv.length;\n \tsession->iv.offset = xform->aead.iv.offset;\n@@ -1951,7 +1924,6 @@ caam_jr_security_session_create(void *dev,\n \tstruct rte_cryptodev *cdev = (struct rte_cryptodev *)dev;\n \tint ret;\n \n-\tPMD_INIT_FUNC_TRACE();\n \tif (rte_mempool_get(mempool, &sess_private_data)) {\n \t\tCAAM_JR_ERR(\"Couldn't get object from session mempool\");\n \t\treturn -ENOMEM;\n@@ -2109,7 +2081,6 @@ static struct rte_security_ops caam_jr_security_ops = {\n static void\n close_job_ring(struct sec_job_ring_t *job_ring)\n {\n-\tPMD_INIT_FUNC_TRACE();\n \tif (job_ring->irq_fd) {\n \t\t/* Producer index is frozen. If consumer index is not equal\n \t\t * with producer index, then we have descs to flush.\n",
    "prefixes": [
        "1/2"
    ]
}