get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 110361,
    "url": "http://patches.dpdk.org/api/patches/110361/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20220427145821.5987-10-kalesh-anakkur.purayil@broadcom.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": "<20220427145821.5987-10-kalesh-anakkur.purayil@broadcom.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20220427145821.5987-10-kalesh-anakkur.purayil@broadcom.com",
    "date": "2022-04-27T14:58:13",
    "name": "[09/17] net/bnxt: add check for dupliate queue ids",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "5a860848c10b3fbd2f12d4bd9907f4dcb6a1067e",
    "submitter": {
        "id": 1479,
        "url": "http://patches.dpdk.org/api/people/1479/?format=api",
        "name": "Kalesh A P",
        "email": "kalesh-anakkur.purayil@broadcom.com"
    },
    "delegate": {
        "id": 1766,
        "url": "http://patches.dpdk.org/api/users/1766/?format=api",
        "username": "ajitkhaparde",
        "first_name": "Ajit",
        "last_name": "Khaparde",
        "email": "ajit.khaparde@broadcom.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20220427145821.5987-10-kalesh-anakkur.purayil@broadcom.com/mbox/",
    "series": [
        {
            "id": 22696,
            "url": "http://patches.dpdk.org/api/series/22696/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=22696",
            "date": "2022-04-27T14:58:04",
            "name": "bnxt PMD fixes",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/22696/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/110361/comments/",
    "check": "warning",
    "checks": "http://patches.dpdk.org/api/patches/110361/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 F2F54A034C;\n\tWed, 27 Apr 2022 16:59:39 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 941E842826;\n\tWed, 27 Apr 2022 16:58:44 +0200 (CEST)",
            "from relay.smtp-ext.broadcom.com (relay.smtp-ext.broadcom.com\n [192.19.166.231])\n by mails.dpdk.org (Postfix) with ESMTP id 9521942821\n for <dev@dpdk.org>; Wed, 27 Apr 2022 16:58:42 +0200 (CEST)",
            "from dhcp-10-123-153-22.dhcp.broadcom.net\n (bgccx-dev-host-lnx2.bec.broadcom.net [10.123.153.22])\n by relay.smtp-ext.broadcom.com (Postfix) with ESMTP id 2BE01C0000F2;\n Wed, 27 Apr 2022 07:58:40 -0700 (PDT)"
        ],
        "DKIM-Filter": "OpenDKIM Filter v2.11.0 relay.smtp-ext.broadcom.com 2BE01C0000F2",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=broadcom.com;\n s=dkimrelay; t=1651071522;\n bh=RuXxO3yepVPMg9w+vtaV6dty/9rXnzd77V1WcO7a0vI=;\n h=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n b=aO9UZTlQ74uXpFaPeLAd+nxQMr40zujF9pGNlXjAKKJP2in8ML+Qj7VEbpGfUO+My\n KJMNdk6sNhqIrWixP/35jqzK8FHdA8h9C43wo1guBp5dThBmT69boaFvmEmdT/ei3R\n us3btgxZuj0wcxk9zJAZOnKWQN17aBNXAjZNew+A=",
        "From": "Kalesh A P <kalesh-anakkur.purayil@broadcom.com>",
        "To": "dev@dpdk.org",
        "Cc": "ajit.khaparde@broadcom.com",
        "Subject": "[PATCH 09/17] net/bnxt: add check for dupliate queue ids",
        "Date": "Wed, 27 Apr 2022 20:28:13 +0530",
        "Message-Id": "<20220427145821.5987-10-kalesh-anakkur.purayil@broadcom.com>",
        "X-Mailer": "git-send-email 2.10.1",
        "In-Reply-To": "<20220427145821.5987-1-kalesh-anakkur.purayil@broadcom.com>",
        "References": "<20220427145821.5987-1-kalesh-anakkur.purayil@broadcom.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: Kalesh AP <kalesh-anakkur.purayil@broadcom.com>\n\nCurrently driver does not have a check for duplicate queue ids.\nUser must either specify all Rx queues created or no queues in the\nflow create command. Repeating the queue index is invalid.\n\nAlso, moved the check for invalid queue to the beginning of the function.\n\nFixes: 239695f754cb (\"net/bnxt: enhance RSS action support\")\nCc: stable@dpdk.org\n\nSigned-off-by: Kalesh AP <kalesh-anakkur.purayil@broadcom.com>\nReviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>\nReviewed-by: Somnath Kotur <somnath.kotur@broadcom.com>\n---\n drivers/net/bnxt/bnxt_flow.c | 49 +++++++++++++++++++++++++++++---------------\n 1 file changed, 32 insertions(+), 17 deletions(-)",
    "diff": "diff --git a/drivers/net/bnxt/bnxt_flow.c b/drivers/net/bnxt/bnxt_flow.c\nindex bd96bba..fc5bacf 100644\n--- a/drivers/net/bnxt/bnxt_flow.c\n+++ b/drivers/net/bnxt/bnxt_flow.c\n@@ -1115,7 +1115,7 @@ bnxt_vnic_rss_cfg_update(struct bnxt *bp,\n \t\t\t struct rte_flow_error *error)\n {\n \tconst struct rte_flow_action_rss *rss;\n-\tunsigned int rss_idx, i;\n+\tunsigned int rss_idx, i, j;\n \tuint16_t hash_type;\n \tuint64_t types;\n \tint rc;\n@@ -1133,6 +1133,37 @@ bnxt_vnic_rss_cfg_update(struct bnxt *bp,\n \t\tgoto ret;\n \t}\n \n+\t/* Validate Rx queues */\n+\tfor (i = 0; i < rss->queue_num; i++) {\n+\t\tPMD_DRV_LOG(DEBUG, \"RSS action Queue %d\\n\", rss->queue[i]);\n+\n+\t\tif (rss->queue[i] >= bp->rx_nr_rings ||\n+\t\t    !bp->rx_queues[rss->queue[i]]) {\n+\t\t\trte_flow_error_set(error,\n+\t\t\t\t\t   EINVAL,\n+\t\t\t\t\t   RTE_FLOW_ERROR_TYPE_ACTION,\n+\t\t\t\t\t   act,\n+\t\t\t\t\t   \"Invalid queue ID for RSS\");\n+\t\t\trc = -rte_errno;\n+\t\t\tgoto ret;\n+\t\t}\n+\t}\n+\n+\t/* Duplicate queue ids are not supported. */\n+\tfor (i = 0; i < rss->queue_num; i++) {\n+\t\tfor (j = i + 1; j < rss->queue_num; j++) {\n+\t\t\tif (rss->queue[i] == rss->queue[j]) {\n+\t\t\t\trte_flow_error_set(error,\n+\t\t\t\t\t\t   EINVAL,\n+\t\t\t\t\t\t   RTE_FLOW_ERROR_TYPE_ACTION,\n+\t\t\t\t\t\t   act,\n+\t\t\t\t\t\t   \"Duplicate queue ID for RSS\");\n+\t\t\t\trc = -rte_errno;\n+\t\t\t\tgoto ret;\n+\t\t\t}\n+\t\t}\n+\t}\n+\n \t/* Currently only Toeplitz hash is supported. */\n \tif (rss->func != RTE_ETH_HASH_FUNCTION_DEFAULT &&\n \t    rss->func != RTE_ETH_HASH_FUNCTION_TOEPLITZ) {\n@@ -1200,22 +1231,6 @@ bnxt_vnic_rss_cfg_update(struct bnxt *bp,\n \tif (rss->queue_num == 0)\n \t\tgoto skip_rss_table;\n \n-\t/* Validate Rx queues */\n-\tfor (i = 0; i < rss->queue_num; i++) {\n-\t\tPMD_DRV_LOG(DEBUG, \"RSS action Queue %d\\n\", rss->queue[i]);\n-\n-\t\tif (rss->queue[i] >= bp->rx_nr_rings ||\n-\t\t    !bp->rx_queues[rss->queue[i]]) {\n-\t\t\trte_flow_error_set(error,\n-\t\t\t\t\t   EINVAL,\n-\t\t\t\t\t   RTE_FLOW_ERROR_TYPE_ACTION,\n-\t\t\t\t\t   act,\n-\t\t\t\t\t   \"Invalid queue ID for RSS\");\n-\t\t\trc = -rte_errno;\n-\t\t\tgoto ret;\n-\t\t}\n-\t}\n-\n \t/* Prepare the indirection table */\n \tfor (rss_idx = 0; rss_idx < HW_HASH_INDEX_SIZE; rss_idx++) {\n \t\tstruct bnxt_rx_queue *rxq;\n",
    "prefixes": [
        "09/17"
    ]
}