get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 74293,
    "url": "http://patches.dpdk.org/api/patches/74293/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20200717171959.44998-4-chenmin.sun@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": "<20200717171959.44998-4-chenmin.sun@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20200717171959.44998-4-chenmin.sun@intel.com",
    "date": "2020-07-17T17:19:58",
    "name": "[v5,3/4] net/i40e: move the i40e_get_outer_vlan to where it real needed",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "90bfd695024cc87e4575702b3ac7b1b407cbf83a",
    "submitter": {
        "id": 1212,
        "url": "http://patches.dpdk.org/api/people/1212/?format=api",
        "name": "Chenmin Sun",
        "email": "chenmin.sun@intel.com"
    },
    "delegate": {
        "id": 1540,
        "url": "http://patches.dpdk.org/api/users/1540/?format=api",
        "username": "qzhan15",
        "first_name": "Qi",
        "last_name": "Zhang",
        "email": "qi.z.zhang@intel.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20200717171959.44998-4-chenmin.sun@intel.com/mbox/",
    "series": [
        {
            "id": 11120,
            "url": "http://patches.dpdk.org/api/series/11120/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=11120",
            "date": "2020-07-17T17:19:55",
            "name": "i40e FDIR update rate optimization",
            "version": 5,
            "mbox": "http://patches.dpdk.org/series/11120/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/74293/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/74293/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 dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 0A515A0528;\n\tFri, 17 Jul 2020 10:23:47 +0200 (CEST)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 74CB41BF91;\n\tFri, 17 Jul 2020 10:23:24 +0200 (CEST)",
            "from mga14.intel.com (mga14.intel.com [192.55.52.115])\n by dpdk.org (Postfix) with ESMTP id BA4FD1BF6F\n for <dev@dpdk.org>; Fri, 17 Jul 2020 10:23:16 +0200 (CEST)",
            "from orsmga005.jf.intel.com ([10.7.209.41])\n by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 17 Jul 2020 01:23:16 -0700",
            "from npg-dpdk-vpp-scm-1.sh.intel.com ([10.67.118.226])\n by orsmga005.jf.intel.com with ESMTP; 17 Jul 2020 01:23:14 -0700"
        ],
        "IronPort-SDR": [
            "\n Q/wnXIyJXGb6YSc4znoBgXmF1G6rlDcijt1wjmpoNbf3yNhX9uBn6REjhH5IQ+6zpQ8nl7dUlh\n EFo/bTYnTl3A==",
            "\n 21ljfqmgNMDusSv+MBCi0AXEq3Gz9UwkMETjxMFtgYWl6aFKD2XhnBpHLZ99C+nkc6GLABnr/b\n WXgOCHeLQPcQ=="
        ],
        "X-IronPort-AV": [
            "E=McAfee;i=\"6000,8403,9684\"; a=\"148714438\"",
            "E=Sophos;i=\"5.75,362,1589266800\"; d=\"scan'208\";a=\"148714438\"",
            "E=Sophos;i=\"5.75,362,1589266800\"; d=\"scan'208\";a=\"460777165\""
        ],
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "From": "chenmin.sun@intel.com",
        "To": "qi.z.zhang@intel.com, beilei.xing@intel.com, jingjing.wu@intel.com,\n haiyue.wang@intel.com",
        "Cc": "dev@dpdk.org,\n\tchenmin.sun@intel.com",
        "Date": "Sat, 18 Jul 2020 01:19:58 +0800",
        "Message-Id": "<20200717171959.44998-4-chenmin.sun@intel.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "In-Reply-To": "<20200717171959.44998-1-chenmin.sun@intel.com>",
        "References": "<20200715195329.34699-1-chenmin.sun@intel.com>\n <20200717171959.44998-1-chenmin.sun@intel.com>",
        "Subject": "[dpdk-dev] [PATCH v5 3/4] net/i40e: move the i40e_get_outer_vlan to\n\twhere it real needed",
        "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 <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",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "From: Chenmin Sun <chenmin.sun@intel.com>\n\nThis patch moves the fetching the device tpid to where it really needs,\nrather than fetching it every time when entered the functions.\nThis is because this operation costs too many cycles and it is used only\nwhen matching the ethernet header.\n\nSigned-off-by: Chenmin Sun <chenmin.sun@intel.com>\n---\n drivers/net/i40e/i40e_flow.c | 11 +++--------\n 1 file changed, 3 insertions(+), 8 deletions(-)",
    "diff": "diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c\nindex 8c36f29b9..9a8bca46f 100644\n--- a/drivers/net/i40e/i40e_flow.c\n+++ b/drivers/net/i40e/i40e_flow.c\n@@ -2047,9 +2047,6 @@ i40e_flow_parse_ethertype_pattern(struct rte_eth_dev *dev,\n \tconst struct rte_flow_item_eth *eth_spec;\n \tconst struct rte_flow_item_eth *eth_mask;\n \tenum rte_flow_item_type item_type;\n-\tuint16_t outer_tpid;\n-\n-\touter_tpid = i40e_get_outer_vlan(dev);\n \n \tfor (; item->type != RTE_FLOW_ITEM_TYPE_END; item++) {\n \t\tif (item->last) {\n@@ -2109,7 +2106,7 @@ i40e_flow_parse_ethertype_pattern(struct rte_eth_dev *dev,\n \t\t\tif (filter->ether_type == RTE_ETHER_TYPE_IPV4 ||\n \t\t\t    filter->ether_type == RTE_ETHER_TYPE_IPV6 ||\n \t\t\t    filter->ether_type == RTE_ETHER_TYPE_LLDP ||\n-\t\t\t    filter->ether_type == outer_tpid) {\n+\t\t\t    filter->ether_type == i40e_get_outer_vlan(dev)) {\n \t\t\t\trte_flow_error_set(error, EINVAL,\n \t\t\t\t\t\t   RTE_FLOW_ERROR_TYPE_ITEM,\n \t\t\t\t\t\t   item,\n@@ -2611,7 +2608,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,\n \tuint16_t flex_size;\n \tbool cfg_flex_pit = true;\n \tbool cfg_flex_msk = true;\n-\tuint16_t outer_tpid;\n \tuint16_t ether_type;\n \tuint32_t vtc_flow_cpu;\n \tbool outer_ip = true;\n@@ -2620,7 +2616,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,\n \tmemset(off_arr, 0, sizeof(off_arr));\n \tmemset(len_arr, 0, sizeof(len_arr));\n \tmemset(flex_mask, 0, I40E_FDIR_MAX_FLEX_LEN);\n-\touter_tpid = i40e_get_outer_vlan(dev);\n \tfilter->input.flow_ext.customized_pctype = false;\n \tfor (; item->type != RTE_FLOW_ITEM_TYPE_END; item++) {\n \t\tif (item->last) {\n@@ -2688,7 +2683,7 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,\n \t\t\t\tif (next_type == RTE_FLOW_ITEM_TYPE_VLAN ||\n \t\t\t\t    ether_type == RTE_ETHER_TYPE_IPV4 ||\n \t\t\t\t    ether_type == RTE_ETHER_TYPE_IPV6 ||\n-\t\t\t\t    ether_type == outer_tpid) {\n+\t\t\t\t    ether_type == i40e_get_outer_vlan(dev)) {\n \t\t\t\t\trte_flow_error_set(error, EINVAL,\n \t\t\t\t\t\t     RTE_FLOW_ERROR_TYPE_ITEM,\n \t\t\t\t\t\t     item,\n@@ -2732,7 +2727,7 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,\n \n \t\t\t\tif (ether_type == RTE_ETHER_TYPE_IPV4 ||\n \t\t\t\t    ether_type == RTE_ETHER_TYPE_IPV6 ||\n-\t\t\t\t    ether_type == outer_tpid) {\n+\t\t\t\t    ether_type == i40e_get_outer_vlan(dev)) {\n \t\t\t\t\trte_flow_error_set(error, EINVAL,\n \t\t\t\t\t\t     RTE_FLOW_ERROR_TYPE_ITEM,\n \t\t\t\t\t\t     item,\n",
    "prefixes": [
        "v5",
        "3/4"
    ]
}