get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 74285,
    "url": "http://patches.dpdk.org/api/patches/74285/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1594969911-105341-4-git-send-email-bingz@mellanox.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": "<1594969911-105341-4-git-send-email-bingz@mellanox.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1594969911-105341-4-git-send-email-bingz@mellanox.com",
    "date": "2020-07-17T07:11:47",
    "name": "[v4,3/7] common/mlx5: add flex parser DevX structures",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "8185c9e49dbc3fc79bcf4caf08be21df43f9fd6f",
    "submitter": {
        "id": 1357,
        "url": "http://patches.dpdk.org/api/people/1357/?format=api",
        "name": "Bing Zhao",
        "email": "bingz@mellanox.com"
    },
    "delegate": {
        "id": 3268,
        "url": "http://patches.dpdk.org/api/users/3268/?format=api",
        "username": "rasland",
        "first_name": "Raslan",
        "last_name": "Darawsheh",
        "email": "rasland@nvidia.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/1594969911-105341-4-git-send-email-bingz@mellanox.com/mbox/",
    "series": [
        {
            "id": 11119,
            "url": "http://patches.dpdk.org/api/series/11119/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=11119",
            "date": "2020-07-17T07:11:44",
            "name": "add eCPRI support in mlx5 driver",
            "version": 4,
            "mbox": "http://patches.dpdk.org/series/11119/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/74285/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/74285/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 B354BA0528;\n\tFri, 17 Jul 2020 09:12:28 +0200 (CEST)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 25B911BF67;\n\tFri, 17 Jul 2020 09:12:08 +0200 (CEST)",
            "from git-send-mailer.rdmz.labs.mlnx (unknown [37.142.13.130])\n by dpdk.org (Postfix) with ESMTP id 864F21BF44\n for <dev@dpdk.org>; Fri, 17 Jul 2020 09:12:03 +0200 (CEST)"
        ],
        "From": "Bing Zhao <bingz@mellanox.com>",
        "To": "orika@mellanox.com,\n\tviacheslavo@mellanox.com",
        "Cc": "rasland@mellanox.com, matan@mellanox.com, dev@dpdk.org,\n netanelg@mellanox.com",
        "Date": "Fri, 17 Jul 2020 15:11:47 +0800",
        "Message-Id": "<1594969911-105341-4-git-send-email-bingz@mellanox.com>",
        "X-Mailer": "git-send-email 1.8.3.1",
        "In-Reply-To": "<1594969911-105341-1-git-send-email-bingz@mellanox.com>",
        "References": "<1594909426-64843-1-git-send-email-bingz@mellanox.com>\n <1594969911-105341-1-git-send-email-bingz@mellanox.com>",
        "Subject": "[dpdk-dev] [PATCH v4 3/7] common/mlx5: add flex parser DevX\n\tstructures",
        "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": "The structures and other definitions will be used for the dynamic\nflex parser creation via Devx command interface. These structures\nwill be used as some some intermediate variables and input\nparameters for the parser creation API.\nIt is better to keep all members consistent with the PRM definition\neven though some of them will not be used.\n\nSigned-off-by: Bing Zhao <bingz@mellanox.com>\nAcked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>\n---\n drivers/common/mlx5/mlx5_devx_cmds.h | 44 ++++++++++++++++++++++++++++++++++++\n drivers/common/mlx5/mlx5_prm.h       | 30 ++++++++++++++++++++++++\n drivers/net/mlx5/mlx5.h              |  2 +-\n 3 files changed, 75 insertions(+), 1 deletion(-)",
    "diff": "diff --git a/drivers/common/mlx5/mlx5_devx_cmds.h b/drivers/common/mlx5/mlx5_devx_cmds.h\nindex 34482e1..4811a1a 100644\n--- a/drivers/common/mlx5/mlx5_devx_cmds.h\n+++ b/drivers/common/mlx5/mlx5_devx_cmds.h\n@@ -309,6 +309,50 @@ struct mlx5_devx_virtio_q_couners_attr {\n \tuint32_t invalid_buffer;\n };\n \n+/*\n+ * graph flow match sample attributes structure,\n+ * used by flex parser operations.\n+ */\n+struct mlx5_devx_match_sample_attr {\n+\tuint32_t flow_match_sample_en:1;\n+\tuint32_t flow_match_sample_field_offset:16;\n+\tuint32_t flow_match_sample_offset_mode:4;\n+\tuint32_t flow_match_sample_field_offset_mask;\n+\tuint32_t flow_match_sample_field_offset_shift:4;\n+\tuint32_t flow_match_sample_field_base_offset:8;\n+\tuint32_t flow_match_sample_tunnel_mode:3;\n+\tuint32_t flow_match_sample_field_id;\n+};\n+\n+/* graph node arc attributes structure, used by flex parser operations. */\n+struct mlx5_devx_graph_arc_attr {\n+\tuint32_t compare_condition_value:16;\n+\tuint32_t start_inner_tunnel:1;\n+\tuint32_t arc_parse_graph_node:8;\n+\tuint32_t parse_graph_node_handle;\n+};\n+\n+/* Maximal number of samples per graph node. */\n+#define MLX5_GRAPH_NODE_SAMPLE_NUM 8\n+\n+/* Maximal number of input/output arcs per graph node. */\n+#define MLX5_GRAPH_NODE_ARC_NUM 8\n+\n+/* parse graph node attributes structure, used by flex parser operations. */\n+struct mlx5_devx_graph_node_attr {\n+\tuint32_t modify_field_select;\n+\tuint32_t header_length_mode:4;\n+\tuint32_t header_length_base_value:16;\n+\tuint32_t header_length_field_shift:4;\n+\tuint32_t header_length_field_offset:16;\n+\tuint32_t header_length_field_mask;\n+\tstruct mlx5_devx_match_sample_attr sample[MLX5_GRAPH_NODE_SAMPLE_NUM];\n+\tuint32_t next_header_field_offset:16;\n+\tuint32_t next_header_field_size:5;\n+\tstruct mlx5_devx_graph_arc_attr in[MLX5_GRAPH_NODE_ARC_NUM];\n+\tstruct mlx5_devx_graph_arc_attr out[MLX5_GRAPH_NODE_ARC_NUM];\n+};\n+\n /* mlx5_devx_cmds.c */\n \n __rte_internal\ndiff --git a/drivers/common/mlx5/mlx5_prm.h b/drivers/common/mlx5/mlx5_prm.h\nindex 4c06c37..81ff3d0 100644\n--- a/drivers/common/mlx5/mlx5_prm.h\n+++ b/drivers/common/mlx5/mlx5_prm.h\n@@ -2650,6 +2650,36 @@ enum {\n /* The bits meter color use. */\n #define MLX5_MTR_COLOR_BITS 8\n \n+/* Length mode of dynamic flex parser graph node. */\n+enum mlx5_parse_graph_node_len_mode {\n+\tMLX5_GRAPH_NODE_LEN_FIXED = 0x0,\n+\tMLX5_GRAPH_NODE_LEN_FIELD = 0x1,\n+\tMLX5_GRAPH_NODE_LEN_BITMASK = 0x2,\n+};\n+\n+/* Offset mode of the samples of flex parser. */\n+enum mlx5_parse_graph_flow_match_sample_offset_mode {\n+\tMLX5_GRAPH_SAMPLE_OFFSET_FIXED = 0x0,\n+\tMLX5_GRAPH_SAMPLE_OFFSET_FIELD = 0x1,\n+\tMLX5_GRAPH_SAMPLE_OFFSET_BITMASK = 0x2,\n+};\n+\n+/* Node index for an input / output arc of the flex parser graph. */\n+enum mlx5_parse_graph_arc_node_index {\n+\tMLX5_GRAPH_ARC_NODE_NULL = 0x0,\n+\tMLX5_GRAPH_ARC_NODE_HEAD = 0x1,\n+\tMLX5_GRAPH_ARC_NODE_MAC = 0x2,\n+\tMLX5_GRAPH_ARC_NODE_IP = 0x3,\n+\tMLX5_GRAPH_ARC_NODE_GRE = 0x4,\n+\tMLX5_GRAPH_ARC_NODE_UDP = 0x5,\n+\tMLX5_GRAPH_ARC_NODE_MPLS = 0x6,\n+\tMLX5_GRAPH_ARC_NODE_TCP = 0x7,\n+\tMLX5_GRAPH_ARC_NODE_VXLAN_GPE = 0x8,\n+\tMLX5_GRAPH_ARC_NODE_GENEVE = 0x9,\n+\tMLX5_GRAPH_ARC_NODE_IPSEC_ESP = 0xa,\n+\tMLX5_GRAPH_ARC_NODE_PROGRAMMABLE = 0x1f,\n+};\n+\n /**\n  * Convert a user mark to flow mark.\n  *\ndiff --git a/drivers/net/mlx5/mlx5.h b/drivers/net/mlx5/mlx5.h\nindex 9b29e3c..61abe4a 100644\n--- a/drivers/net/mlx5/mlx5.h\n+++ b/drivers/net/mlx5/mlx5.h\n@@ -600,7 +600,7 @@ enum mlx5_flex_parser_profile_id {\n struct mlx5_flex_parser_profiles {\n \tuint32_t num;\t\t/* Actual number of samples. */\n \tuint32_t ids[8];\t/* Sample IDs for this profile. */\n-\tuint8_t offset[8];      /* Bytes offset of each parser. */\n+\tuint8_t offset[8];\t/* Bytes offset of each parser. */\n \tvoid *obj;\t\t/* Flex parser node object. */\n };\n \n",
    "prefixes": [
        "v4",
        "3/7"
    ]
}