get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 116595,
    "url": "http://patches.dpdk.org/api/patches/116595/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1663794172-19697-7-git-send-email-nicolas.chautru@intel.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": "<1663794172-19697-7-git-send-email-nicolas.chautru@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1663794172-19697-7-git-send-email-nicolas.chautru@intel.com",
    "date": "2022-09-21T21:02:51",
    "name": "[v8,6/7] bbdev: add queue related warning and status information",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "be4609ab6f13135d4a9a10f8e757f243a670aef5",
    "submitter": {
        "id": 1314,
        "url": "http://patches.dpdk.org/api/people/1314/?format=api",
        "name": "Chautru, Nicolas",
        "email": "nicolas.chautru@intel.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/1663794172-19697-7-git-send-email-nicolas.chautru@intel.com/mbox/",
    "series": [
        {
            "id": 24762,
            "url": "http://patches.dpdk.org/api/series/24762/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=24762",
            "date": "2022-09-21T21:02:45",
            "name": "bbdev changes for 22.11",
            "version": 8,
            "mbox": "http://patches.dpdk.org/series/24762/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/116595/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/116595/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 D511AA00C3;\n\tWed, 21 Sep 2022 23:04:04 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id AB82B42B86;\n\tWed, 21 Sep 2022 23:03:28 +0200 (CEST)",
            "from mga09.intel.com (mga09.intel.com [134.134.136.24])\n by mails.dpdk.org (Postfix) with ESMTP id 12B104282B\n for <dev@dpdk.org>; Wed, 21 Sep 2022 23:03:23 +0200 (CEST)",
            "from orsmga005.jf.intel.com ([10.7.209.41])\n by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 21 Sep 2022 14:03:23 -0700",
            "from unknown (HELO icx-npg-scs1-cp1.localdomain) ([10.233.180.245])\n by orsmga005.jf.intel.com with ESMTP; 21 Sep 2022 14:03:23 -0700"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1663794204; x=1695330204;\n h=from:to:cc:subject:date:message-id:in-reply-to: references;\n bh=QXwySZ4t90TYEsDIpmV50EheNFUBp4hyHy4BEc+mtRw=;\n b=i/iBbDbUfseQsLnMup8oT0MtmWHmcNc0gZRvF28OnDtNijFwqp8VEanU\n E+fcuS5U/Yj20rjmOymnySw7DvgsjgVDHnIEiggFWgKVZKw2vJ+y9AvJF\n vnLAEhvvEldT9rR1pM6VnSxd2MVVMs1153LKaW1ZQzjbBFZvm1F/37Saq\n 0woqBeZ958iOwyW99xsnSkdTzxciyAbizg49SUjROZP9leSjIGiwpl8nS\n HsonGAeST/WpBxItc9O8N6mzrzwGUmzUidIT9mM1kmUk7G4XOqx3InFem\n bRqSn6u2vuqe6dYvh4ucpRV+vzFii4E8MG+Bfgpy+1uX5Ebw2iUWBSlC/ g==;",
        "X-IronPort-AV": [
            "E=McAfee;i=\"6500,9779,10477\"; a=\"300967621\"",
            "E=Sophos;i=\"5.93,334,1654585200\"; d=\"scan'208\";a=\"300967621\"",
            "E=Sophos;i=\"5.93,334,1654585200\"; d=\"scan'208\";a=\"794832360\""
        ],
        "X-ExtLoop1": "1",
        "From": "Nic Chautru <nicolas.chautru@intel.com>",
        "To": "dev@dpdk.org,\n\tthomas@monjalon.net,\n\tgakhil@marvell.com",
        "Cc": "maxime.coquelin@redhat.com, trix@redhat.com, mdr@ashroe.eu,\n bruce.richardson@intel.com, david.marchand@redhat.com,\n stephen@networkplumber.org, mingshan.zhang@intel.com,\n hemant.agrawal@nxp.com, Nicolas Chautru <nicolas.chautru@intel.com>",
        "Subject": "[PATCH v8 6/7] bbdev: add queue related warning and status\n information",
        "Date": "Wed, 21 Sep 2022 14:02:51 -0700",
        "Message-Id": "<1663794172-19697-7-git-send-email-nicolas.chautru@intel.com>",
        "X-Mailer": "git-send-email 1.8.3.1",
        "In-Reply-To": "<1663794172-19697-1-git-send-email-nicolas.chautru@intel.com>",
        "References": "<1655491040-183649-6-git-send-email-nicolas.chautru@intel.com>\n <1663794172-19697-1-git-send-email-nicolas.chautru@intel.com>",
        "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"
    },
    "content": "From: Nicolas Chautru <nicolas.chautru@intel.com>\n\nThis allows to expose more information with regards to any\nqueue related failure and warning which cannot be supported\nin existing API.\n\nSigned-off-by: Nicolas Chautru <nicolas.chautru@intel.com>\nAcked-by: Maxime Coquelin <maxime.coquelin@redhat.com>\n---\n app/test-bbdev/test_bbdev_perf.c |  2 ++\n lib/bbdev/rte_bbdev.c            | 19 +++++++++++++++++++\n lib/bbdev/rte_bbdev.h            | 34 ++++++++++++++++++++++++++++++++++\n lib/bbdev/version.map            |  1 +\n 4 files changed, 56 insertions(+)",
    "diff": "diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c\nindex 1abda2d..653b21f 100644\n--- a/app/test-bbdev/test_bbdev_perf.c\n+++ b/app/test-bbdev/test_bbdev_perf.c\n@@ -4360,6 +4360,8 @@ typedef int (test_case_function)(struct active_device *ad,\n \tstats->dequeued_count = q_stats->dequeued_count;\n \tstats->enqueue_err_count = q_stats->enqueue_err_count;\n \tstats->dequeue_err_count = q_stats->dequeue_err_count;\n+\tstats->enqueue_warning_count = q_stats->enqueue_warning_count;\n+\tstats->dequeue_warning_count = q_stats->dequeue_warning_count;\n \tstats->acc_offload_cycles = q_stats->acc_offload_cycles;\n \n \treturn 0;\ndiff --git a/lib/bbdev/rte_bbdev.c b/lib/bbdev/rte_bbdev.c\nindex 9d65ba8..bdd7c2f 100644\n--- a/lib/bbdev/rte_bbdev.c\n+++ b/lib/bbdev/rte_bbdev.c\n@@ -721,6 +721,8 @@ struct rte_bbdev *\n \t\tstats->dequeued_count += q_stats->dequeued_count;\n \t\tstats->enqueue_err_count += q_stats->enqueue_err_count;\n \t\tstats->dequeue_err_count += q_stats->dequeue_err_count;\n+\t\tstats->enqueue_warn_count += q_stats->enqueue_warn_count;\n+\t\tstats->dequeue_warn_count += q_stats->dequeue_warn_count;\n \t}\n \trte_bbdev_log_debug(\"Got stats on %u\", dev->data->dev_id);\n }\n@@ -1163,3 +1165,20 @@ struct rte_mempool *\n \trte_bbdev_log(ERR, \"Invalid device status\");\n \treturn NULL;\n }\n+\n+const char *\n+rte_bbdev_enqueue_status_str(enum rte_bbdev_enqueue_status status)\n+{\n+\tstatic const char * const enq_sta_string[] = {\n+\t\t\"RTE_BBDEV_ENQ_STATUS_NONE\",\n+\t\t\"RTE_BBDEV_ENQ_STATUS_QUEUE_FULL\",\n+\t\t\"RTE_BBDEV_ENQ_STATUS_RING_FULL\",\n+\t\t\"RTE_BBDEV_ENQ_STATUS_INVALID_OP\",\n+\t};\n+\n+\tif (status < sizeof(enq_sta_string) / sizeof(char *))\n+\t\treturn enq_sta_string[status];\n+\n+\trte_bbdev_log(ERR, \"Invalid enqueue status\");\n+\treturn NULL;\n+}\ndiff --git a/lib/bbdev/rte_bbdev.h b/lib/bbdev/rte_bbdev.h\nindex ed30763..f639852 100644\n--- a/lib/bbdev/rte_bbdev.h\n+++ b/lib/bbdev/rte_bbdev.h\n@@ -224,6 +224,19 @@ struct rte_bbdev_queue_conf {\n rte_bbdev_queue_stop(uint16_t dev_id, uint16_t queue_id);\n \n /**\n+ * Flags indicate the reason why a previous enqueue may not have\n+ * consumed all requested operations\n+ * In case of multiple reasons the latter supersedes a previous one\n+ */\n+enum rte_bbdev_enqueue_status {\n+\tRTE_BBDEV_ENQ_STATUS_NONE,             /**< Nothing to report */\n+\tRTE_BBDEV_ENQ_STATUS_QUEUE_FULL,       /**< Not enough room in queue */\n+\tRTE_BBDEV_ENQ_STATUS_RING_FULL,        /**< Not enough room in ring */\n+\tRTE_BBDEV_ENQ_STATUS_INVALID_OP,       /**< Operation was rejected as invalid */\n+\tRTE_BBDEV_ENQ_STATUS_PADDED_MAX = 6,   /**< Maximum enq status number including padding */\n+};\n+\n+/**\n  * Flags indicate the status of the device\n  */\n enum rte_bbdev_device_status {\n@@ -246,6 +259,12 @@ struct rte_bbdev_stats {\n \tuint64_t enqueue_err_count;\n \t/** Total error count on operations dequeued */\n \tuint64_t dequeue_err_count;\n+\t/** Total warning count on operations enqueued */\n+\tuint64_t enqueue_warn_count;\n+\t/** Total warning count on operations dequeued */\n+\tuint64_t dequeue_warn_count;\n+\t/** Total enqueue status count based on rte_bbdev_enqueue_status enum */\n+\tuint64_t enqueue_status_count[RTE_BBDEV_ENQ_STATUS_PADDED_MAX];\n \t/** CPU cycles consumed by the (HW/SW) accelerator device to offload\n \t *  the enqueue request to its internal queues.\n \t *  - For a HW device this is the cycles consumed in MMIO write\n@@ -386,6 +405,7 @@ struct rte_bbdev_queue_data {\n \tvoid *queue_private;  /**< Driver-specific per-queue data */\n \tstruct rte_bbdev_queue_conf conf;  /**< Current configuration */\n \tstruct rte_bbdev_stats queue_stats;  /**< Queue statistics */\n+\tenum rte_bbdev_enqueue_status enqueue_status; /**< Enqueue status when op is rejected */\n \tbool started;  /**< Queue state */\n };\n \n@@ -938,6 +958,20 @@ typedef void (*rte_bbdev_cb_fn)(uint16_t dev_id,\n const char*\n rte_bbdev_device_status_str(enum rte_bbdev_device_status status);\n \n+/**\n+ * Converts queue status from enum to string\n+ *\n+ * @param status\n+ *   Queue status as enum\n+ *\n+ * @returns\n+ *  Queue status as string or NULL if op_type is invalid\n+ *\n+ */\n+__rte_experimental\n+const char*\n+rte_bbdev_enqueue_status_str(enum rte_bbdev_enqueue_status status);\n+\n #ifdef __cplusplus\n }\n #endif\ndiff --git a/lib/bbdev/version.map b/lib/bbdev/version.map\nindex 0cbeab3..f5e2dd7 100644\n--- a/lib/bbdev/version.map\n+++ b/lib/bbdev/version.map\n@@ -45,6 +45,7 @@ EXPERIMENTAL {\n \n \t# added in 22.11\n \trte_bbdev_device_status_str;\n+\trte_bbdev_enqueue_status_str;\n \trte_bbdev_enqueue_fft_ops;\n \trte_bbdev_dequeue_fft_ops;\n \trte_bbdev_fft_op_alloc_bulk;\n",
    "prefixes": [
        "v8",
        "6/7"
    ]
}