get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 41000,
    "url": "http://patchwork.dpdk.org/api/patches/41000/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/1528786244-24821-1-git-send-email-naga.sureshx.somarowthu@intel.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": "<1528786244-24821-1-git-send-email-naga.sureshx.somarowthu@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1528786244-24821-1-git-send-email-naga.sureshx.somarowthu@intel.com",
    "date": "2018-06-12T06:50:44",
    "name": "crypto/aesni_gcm: add dynamic logging to aesni_gcm",
    "commit_ref": null,
    "pull_url": null,
    "state": "changes-requested",
    "archived": true,
    "hash": "4b653ff0da0ae3b00f162fd3f54df1fe0ac79391",
    "submitter": {
        "id": 1053,
        "url": "http://patchwork.dpdk.org/api/people/1053/?format=api",
        "name": "Naga Suresh Somarowthu",
        "email": "naga.sureshx.somarowthu@intel.com"
    },
    "delegate": {
        "id": 22,
        "url": "http://patchwork.dpdk.org/api/users/22/?format=api",
        "username": "pdelarag",
        "first_name": "Pablo",
        "last_name": "de Lara Guarch",
        "email": "pablo.de.lara.guarch@intel.com"
    },
    "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/1528786244-24821-1-git-send-email-naga.sureshx.somarowthu@intel.com/mbox/",
    "series": [
        {
            "id": 90,
            "url": "http://patchwork.dpdk.org/api/series/90/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=90",
            "date": "2018-06-12T06:50:44",
            "name": "crypto/aesni_gcm: add dynamic logging to aesni_gcm",
            "version": 1,
            "mbox": "http://patchwork.dpdk.org/series/90/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/41000/comments/",
    "check": "success",
    "checks": "http://patchwork.dpdk.org/api/patches/41000/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 79AE81E8D1;\n\tTue, 12 Jun 2018 08:51:25 +0200 (CEST)",
            "from mga06.intel.com (mga06.intel.com [134.134.136.31])\n\tby dpdk.org (Postfix) with ESMTP id 0CFDE1E8C9\n\tfor <dev@dpdk.org>; Tue, 12 Jun 2018 08:51:22 +0200 (CEST)",
            "from orsmga008.jf.intel.com ([10.7.209.65])\n\tby orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t11 Jun 2018 23:51:21 -0700",
            "from irvmail001.ir.intel.com ([163.33.26.43])\n\tby orsmga008.jf.intel.com with ESMTP; 11 Jun 2018 23:51:20 -0700",
            "from wgcvswdev001.ir.intel.com (wgcvswdev001.ir.intel.com\n\t[10.102.246.100])\n\tby irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id\n\tw5C6pJTI023447; Tue, 12 Jun 2018 07:51:19 +0100",
            "from wgcvswdev001.ir.intel.com (localhost [127.0.0.1])\n\tby wgcvswdev001.ir.intel.com with ESMTP id w5C6pJUB024913;\n\tTue, 12 Jun 2018 07:51:19 +0100",
            "(from jmparthx@localhost)\n\tby wgcvswdev001.ir.intel.com with ? id w5C6pJqD024909;\n\tTue, 12 Jun 2018 07:51:19 +0100"
        ],
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.51,213,1526367600\"; d=\"scan'208\";a=\"48629990\"",
        "From": "Naga Suresh Somarowthu <naga.sureshx.somarowthu@intel.com>",
        "To": "dev@dpdk.org",
        "Cc": "pablo.de.lara.guarch@intel.com, reshma.pattan@intel.com,\n\ttchaitax <tallurix.chaitanya.babu@intel.com>",
        "Date": "Tue, 12 Jun 2018 07:50:44 +0100",
        "Message-Id": "<1528786244-24821-1-git-send-email-naga.sureshx.somarowthu@intel.com>",
        "X-Mailer": "git-send-email 1.7.12.2",
        "Subject": "[dpdk-dev] [PATCH] crypto/aesni_gcm: add dynamic logging to\n\taesni_gcm",
        "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://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://dpdk.org/ml/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: tchaitax <tallurix.chaitanya.babu@intel.com>\n\n1.added new logtype for aesni_gcm driver.\n2.registered new logtype.\n3.GCM_LOG_ERR and CDEV_LOG_ERR are replaced with\n  new logtype name AESNI_GCM_PMD_LOG.\n\nSigned-off-by: Talluri Chaitanya <tallurix.chaitanya.babu@intel.com>\nReviewed-by: Reshma Pattan <reshma.pattan@intel.com>\n---\n drivers/crypto/aesni_gcm/aesni_gcm_pmd.c         | 29 ++++++++++++++++--------\n drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c     | 15 ++++++------\n drivers/crypto/aesni_gcm/aesni_gcm_pmd_private.h | 25 +++++---------------\n 3 files changed, 32 insertions(+), 37 deletions(-)",
    "diff": "diff --git a/drivers/crypto/aesni_gcm/aesni_gcm_pmd.c b/drivers/crypto/aesni_gcm/aesni_gcm_pmd.c\nindex 80360dd9c..999e61b5f 100644\n--- a/drivers/crypto/aesni_gcm/aesni_gcm_pmd.c\n+++ b/drivers/crypto/aesni_gcm/aesni_gcm_pmd.c\n@@ -31,8 +31,8 @@ aesni_gcm_set_session_parameters(const struct aesni_gcm_ops *gcm_ops,\n \tif (xform->type == RTE_CRYPTO_SYM_XFORM_AUTH) {\n \t\tauth_xform = xform;\n \t\tif (auth_xform->auth.algo != RTE_CRYPTO_AUTH_AES_GMAC) {\n-\t\t\tGCM_LOG_ERR(\"Only AES GMAC is supported as an \"\n-\t\t\t\t\t\"authentication only algorithm\");\n+\t\t\tAESNI_GCM_PMD_LOG(ERR, \"Only AES GMAC is supported as an \"\n+\t\t\t\t\"authentication only algorithm\");\n \t\t\treturn -ENOTSUP;\n \t\t}\n \t\t/* Set IV parameters */\n@@ -54,7 +54,7 @@ aesni_gcm_set_session_parameters(const struct aesni_gcm_ops *gcm_ops,\n \t\taead_xform = xform;\n \n \t\tif (aead_xform->aead.algo != RTE_CRYPTO_AEAD_AES_GCM) {\n-\t\t\tGCM_LOG_ERR(\"The only combined operation \"\n+\t\t\tAESNI_GCM_PMD_LOG(ERR, \"The only combined operation \"\n \t\t\t\t\t\t\"supported is AES GCM\");\n \t\t\treturn -ENOTSUP;\n \t\t}\n@@ -75,7 +75,7 @@ aesni_gcm_set_session_parameters(const struct aesni_gcm_ops *gcm_ops,\n \t\tsess->aad_length = aead_xform->aead.aad_length;\n \t\tdigest_length = aead_xform->aead.digest_length;\n \t} else {\n-\t\tGCM_LOG_ERR(\"Wrong xform type, has to be AEAD or authentication\");\n+\t\tAESNI_GCM_PMD_LOG(ERR, \"Wrong xform type, has to be AEAD or authentication\");\n \t\treturn -ENOTSUP;\n \t}\n \n@@ -83,7 +83,7 @@ aesni_gcm_set_session_parameters(const struct aesni_gcm_ops *gcm_ops,\n \t/* IV check */\n \tif (sess->iv.length != 16 && sess->iv.length != 12 &&\n \t\t\tsess->iv.length != 0) {\n-\t\tGCM_LOG_ERR(\"Wrong IV length\");\n+\t\tAESNI_GCM_PMD_LOG(ERR, \"Wrong IV length\");\n \t\treturn -EINVAL;\n \t}\n \n@@ -99,7 +99,7 @@ aesni_gcm_set_session_parameters(const struct aesni_gcm_ops *gcm_ops,\n \t\tsess->key = AESNI_GCM_KEY_256;\n \t\tbreak;\n \tdefault:\n-\t\tGCM_LOG_ERR(\"Invalid key length\");\n+\t\tAESNI_GCM_PMD_LOG(ERR, \"Invalid key length\");\n \t\treturn -EINVAL;\n \t}\n \n@@ -109,7 +109,7 @@ aesni_gcm_set_session_parameters(const struct aesni_gcm_ops *gcm_ops,\n \tif (digest_length != 16 &&\n \t\t\tdigest_length != 12 &&\n \t\t\tdigest_length != 8) {\n-\t\tGCM_LOG_ERR(\"digest\");\n+\t\tAESNI_GCM_PMD_LOG(ERR, \"Invalid digest length\");\n \t\treturn -EINVAL;\n \t}\n \tsess->digest_length = digest_length;\n@@ -464,13 +464,13 @@ aesni_gcm_create(const char *name,\n \n \t/* Check CPU for support for AES instruction set */\n \tif (!rte_cpu_get_flag_enabled(RTE_CPUFLAG_AES)) {\n-\t\tGCM_LOG_ERR(\"AES instructions not supported by CPU\");\n+\t\tAESNI_GCM_PMD_LOG(ERR, \"AES instructions not supported by CPU\");\n \t\treturn -EFAULT;\n \t}\n-\n \tdev = rte_cryptodev_pmd_create(name, &vdev->device, init_params);\n \tif (dev == NULL) {\n-\t\tGCM_LOG_ERR(\"driver %s: create failed\", init_params->name);\n+\t\tAESNI_GCM_PMD_LOG(ERR, \"driver %s: create failed\",\n+\t\t\tinit_params->name);\n \t\treturn -ENODEV;\n \t}\n \n@@ -572,3 +572,12 @@ RTE_PMD_REGISTER_PARAM_STRING(CRYPTODEV_NAME_AESNI_GCM_PMD,\n \t\"socket_id=<int>\");\n RTE_PMD_REGISTER_CRYPTO_DRIVER(aesni_gcm_crypto_drv, aesni_gcm_pmd_drv.driver,\n \t\tcryptodev_driver_id);\n+\n+\n+RTE_INIT(aesni_gcm_init_log);\n+static void\n+aesni_gcm_init_log(void)\n+{\n+\taesni_gcm_logtype_driver = rte_log_register(\"pmd.crypto.aesni_gcm\");\n+\n+}\ndiff --git a/drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c b/drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c\nindex 6f542137c..817f99b28 100644\n--- a/drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c\n+++ b/drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c\n@@ -183,12 +183,11 @@ aesni_gcm_pmd_qp_create_processed_pkts_ring(struct aesni_gcm_qp *qp,\n \tr = rte_ring_lookup(qp->name);\n \tif (r) {\n \t\tif (rte_ring_get_size(r) >= ring_size) {\n-\t\t\tGCM_LOG_INFO(\"Reusing existing ring %s for processed\"\n-\t\t\t\t\t\" packets\", qp->name);\n+\t\t\tAESNI_GCM_PMD_LOG(INFO, \"Reusing existing ring %s for processed\"\n+\t\t\t\t\" packets\", qp->name);\n \t\t\treturn r;\n \t\t}\n-\n-\t\tGCM_LOG_ERR(\"Unable to reuse existing ring %s for processed\"\n+\t\tAESNI_GCM_PMD_LOG(ERR, \"Unable to reuse existing ring %s for processed\"\n \t\t\t\t\" packets\", qp->name);\n \t\treturn NULL;\n \t}\n@@ -284,19 +283,19 @@ aesni_gcm_pmd_session_configure(struct rte_cryptodev *dev __rte_unused,\n \tstruct aesni_gcm_private *internals = dev->data->dev_private;\n \n \tif (unlikely(sess == NULL)) {\n-\t\tGCM_LOG_ERR(\"invalid session struct\");\n+\t\tAESNI_GCM_PMD_LOG(ERR, \"invalid session struct\");\n \t\treturn -EINVAL;\n \t}\n \n \tif (rte_mempool_get(mempool, &sess_private_data)) {\n-\t\tCDEV_LOG_ERR(\n-\t\t\t\"Couldn't get object from session mempool\");\n+\t\tAESNI_GCM_PMD_LOG(ERR,\n+\t\t\t\t\"Couldn't get object from session mempool\");\n \t\treturn -ENOMEM;\n \t}\n \tret = aesni_gcm_set_session_parameters(gcm_ops[internals->vector_mode],\n \t\t\t\tsess_private_data, xform);\n \tif (ret != 0) {\n-\t\tGCM_LOG_ERR(\"failed configure session parameters\");\n+\t\tAESNI_GCM_PMD_LOG(ERR, \"failed configure session parameters\");\n \n \t\t/* Return session to mempool */\n \t\trte_mempool_put(mempool, sess_private_data);\ndiff --git a/drivers/crypto/aesni_gcm/aesni_gcm_pmd_private.h b/drivers/crypto/aesni_gcm/aesni_gcm_pmd_private.h\nindex 3d60583b0..52372d972 100644\n--- a/drivers/crypto/aesni_gcm/aesni_gcm_pmd_private.h\n+++ b/drivers/crypto/aesni_gcm/aesni_gcm_pmd_private.h\n@@ -10,25 +10,12 @@\n #define CRYPTODEV_NAME_AESNI_GCM_PMD\tcrypto_aesni_gcm\n /**< AES-NI GCM PMD device name */\n \n-#define GCM_LOG_ERR(fmt, args...) \\\n-\tRTE_LOG(ERR, CRYPTODEV, \"[%s] %s() line %u: \" fmt \"\\n\",  \\\n-\t\t\tRTE_STR(CRYPTODEV_NAME_AESNI_GCM_PMD), \\\n-\t\t\t__func__, __LINE__, ## args)\n-\n-#ifdef RTE_LIBRTE_AESNI_MB_DEBUG\n-#define GCM_LOG_INFO(fmt, args...) \\\n-\tRTE_LOG(INFO, CRYPTODEV, \"[%s] %s() line %u: \" fmt \"\\n\", \\\n-\t\t\tRTE_STR(CRYPTODEV_NAME_AESNI_GCM_PMD), \\\n-\t\t\t__func__, __LINE__, ## args)\n-\n-#define GCM_LOG_DBG(fmt, args...) \\\n-\tRTE_LOG(DEBUG, CRYPTODEV, \"[%s] %s() line %u: \" fmt \"\\n\", \\\n-\t\t\tRTE_STR(CRYPTODEV_NAME_AESNI_GCM_PMD), \\\n-\t\t\t__func__, __LINE__, ## args)\n-#else\n-#define GCM_LOG_INFO(fmt, args...)\n-#define GCM_LOG_DBG(fmt, args...)\n-#endif\n+/** AES-NI GCM PMD  LOGTYPE DRIVER */\n+int aesni_gcm_logtype_driver;\n+#define AESNI_GCM_PMD_LOG(level, fmt, ...) \\\n+\trte_log(RTE_LOG_ ## level, aesni_gcm_logtype_driver,\t\\\n+\t\t\t\"%s() line %u: \"fmt \"\\n\", __func__, __LINE__,\t\\\n+\t\t\t\t\t## __VA_ARGS__)\n \n /* Maximum length for digest */\n #define DIGEST_LENGTH_MAX 16\n",
    "prefixes": []
}