Show a patch.

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

{
    "id": 73498,
    "url": "https://patches.dpdk.org/api/patches/73498/",
    "web_url": "https://patches.dpdk.org/patch/73498/",
    "project": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/projects/1/",
        "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"
    },
    "msgid": "<20200708042613.249847-3-junfeng.guo@intel.com>",
    "date": "2020-07-08T04:26:13",
    "name": "[v4,2/2] net/iavf: add FD support for GTPU with outer IPv4 and IPv6",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "d77d873ffae7ba6ba8b3ef68bca25bfccca42e39",
    "submitter": {
        "id": 1785,
        "url": "https://patches.dpdk.org/api/people/1785/",
        "name": "Guo, Junfeng",
        "email": "junfeng.guo@intel.com"
    },
    "delegate": {
        "id": 1540,
        "url": "https://patches.dpdk.org/api/users/1540/",
        "username": "qzhan15",
        "first_name": "Qi",
        "last_name": "Zhang",
        "email": "qi.z.zhang@intel.com"
    },
    "mbox": "https://patches.dpdk.org/patch/73498/mbox/",
    "series": [
        {
            "id": 10873,
            "url": "https://patches.dpdk.org/api/series/10873/",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=10873",
            "date": "2020-07-08T04:26:11",
            "name": "add FD support for GTPU with outer IP on PF and VF",
            "version": 4,
            "mbox": "https://patches.dpdk.org/series/10873/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/73498/comments/",
    "check": "fail",
    "checks": "https://patches.dpdk.org/api/patches/73498/checks/",
    "tags": {},
    "headers": {
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "Return-Path": "<dev-bounces@dpdk.org>",
        "IronPort-SDR": [
            "\n WLVQrpJYSxyR+35/UIV/UEF8JfkGOur2akivlH2U8desLKQ8NDIw7i3bwYEoFKBSdMcZa/A0gm\n uk/KFGka03/A==",
            "\n O8OxdsqWPUSWxRzgMi7T0H3V1gl/Mu9TJiuAfgx11m9TsRm4uew7wdJg00bpnfV0BskR8I2N0Q\n FesPvXlWYJPw=="
        ],
        "X-Mailer": "git-send-email 2.25.1",
        "To": "qi.z.zhang@intel.com,\n\txiaolong.ye@intel.com,\n\tbeilei.xing@intel.com",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Received": [
            "from dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id D6CFBA00BE;\n\tWed,  8 Jul 2020 06:28:13 +0200 (CEST)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id F36891DE53;\n\tWed,  8 Jul 2020 06:28:03 +0200 (CEST)",
            "from mga03.intel.com (mga03.intel.com [134.134.136.65])\n by dpdk.org (Postfix) with ESMTP id D8A641DE50\n for <dev@dpdk.org>; Wed,  8 Jul 2020 06:28:01 +0200 (CEST)",
            "from orsmga008.jf.intel.com ([10.7.209.65])\n by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 07 Jul 2020 21:28:01 -0700",
            "from dpdk-junfengguo-v3.sh.intel.com ([10.67.119.146])\n by orsmga008.jf.intel.com with ESMTP; 07 Jul 2020 21:27:59 -0700"
        ],
        "X-BeenThere": "dev@dpdk.org",
        "X-Amp-File-Uploaded": "False",
        "Subject": "[dpdk-dev] [PATCH v4 2/2] net/iavf: add FD support for GTPU with\n\touter IPv4 and IPv6",
        "Cc": "dev@dpdk.org, jia.guo@intel.com, junfeng.guo@intel.com, simei.su@intel.com",
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "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-Post": "<mailto:dev@dpdk.org>",
        "In-Reply-To": "<20200708042613.249847-1-junfeng.guo@intel.com>",
        "Precedence": "list",
        "X-ExtLoop1": "1",
        "From": "Junfeng Guo <junfeng.guo@intel.com>",
        "Content-Transfer-Encoding": "8bit",
        "MIME-Version": "1.0",
        "X-IronPort-AV": [
            "E=McAfee;i=\"6000,8403,9675\"; a=\"147743871\"",
            "E=Sophos;i=\"5.75,326,1589266800\"; d=\"scan'208\";a=\"147743871\"",
            "E=Sophos;i=\"5.75,326,1589266800\"; d=\"scan'208\";a=\"314524773\""
        ],
        "References": "<20200617024355.44220-1-junfeng.guo@intel.com>\n <20200708042613.249847-1-junfeng.guo@intel.com>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>",
        "Errors-To": "dev-bounces@dpdk.org",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "Message-Id": "<20200708042613.249847-3-junfeng.guo@intel.com>",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Date": "Wed,  8 Jul 2020 12:26:13 +0800",
        "X-Mailman-Version": "2.1.15"
    },
    "content": "Add FDir support for MAC_IPV4_GTPU and MAC_IPV6_GTPU type with outer\nIPv4/IPv6 address, teid and qfi fields matching. Note that outer IPv4\nand IPv6 matching fields here include both SRC & DST of both IPv4 &\nIPv6.\n\nSigned-off-by: Junfeng Guo <junfeng.guo@intel.com>\n---\n drivers/net/iavf/iavf_fdir.c         | 18 ++++++++++++++----\n drivers/net/iavf/iavf_generic_flow.c | 22 +++++++++++++++++++++-\n drivers/net/iavf/iavf_generic_flow.h | 12 ++++++++++--\n 3 files changed, 45 insertions(+), 7 deletions(-)",
    "diff": "diff --git a/drivers/net/iavf/iavf_fdir.c b/drivers/net/iavf/iavf_fdir.c\nindex 264c47d83..f584e5624 100644\n--- a/drivers/net/iavf/iavf_fdir.c\n+++ b/drivers/net/iavf/iavf_fdir.c\n@@ -68,14 +68,22 @@\n \tIAVF_INSET_IPV6_TC | IAVF_INSET_IPV6_HOP_LIMIT | \\\n \tIAVF_INSET_SCTP_SRC_PORT | IAVF_INSET_SCTP_DST_PORT)\n \n-#define IAVF_FDIR_INSET_GTPU (\\\n+#define IAVF_FDIR_INSET_IPV4_GTPU (\\\n \tIAVF_INSET_IPV4_SRC | IAVF_INSET_IPV4_DST | \\\n \tIAVF_INSET_GTPU_TEID)\n \n-#define IAVF_FDIR_INSET_GTPU_EH (\\\n+#define IAVF_FDIR_INSET_IPV4_GTPU_EH (\\\n \tIAVF_INSET_IPV4_SRC | IAVF_INSET_IPV4_DST | \\\n \tIAVF_INSET_GTPU_TEID | IAVF_INSET_GTPU_QFI)\n \n+#define IAVF_FDIR_INSET_IPV6_GTPU (\\\n+\tIAVF_INSET_IPV6_SRC | IAVF_INSET_IPV6_DST | \\\n+\tIAVF_INSET_GTPU_TEID)\n+\n+#define IAVF_FDIR_INSET_IPV6_GTPU_EH (\\\n+\tIAVF_INSET_IPV6_SRC | IAVF_INSET_IPV6_DST | \\\n+\tIAVF_INSET_GTPU_TEID | IAVF_INSET_GTPU_QFI)\n+\n #define IAVF_FDIR_INSET_L2TPV3OIP (\\\n \tIAVF_L2TPV3OIP_SESSION_ID)\n \n@@ -106,8 +114,10 @@ static struct iavf_pattern_match_item iavf_fdir_pattern[] = {\n \t{iavf_pattern_eth_ipv6_udp,\t\tIAVF_FDIR_INSET_ETH_IPV6_UDP,\t\tIAVF_INSET_NONE},\n \t{iavf_pattern_eth_ipv6_tcp,\t\tIAVF_FDIR_INSET_ETH_IPV6_TCP,\t\tIAVF_INSET_NONE},\n \t{iavf_pattern_eth_ipv6_sctp,\t\tIAVF_FDIR_INSET_ETH_IPV6_SCTP,\t\tIAVF_INSET_NONE},\n-\t{iavf_pattern_eth_ipv4_gtpu,\t\tIAVF_FDIR_INSET_GTPU,\t\t\tIAVF_INSET_NONE},\n-\t{iavf_pattern_eth_ipv4_gtpu_eh,\t\tIAVF_FDIR_INSET_GTPU_EH,\t\tIAVF_INSET_NONE},\n+\t{iavf_pattern_eth_ipv4_gtpu,\t\tIAVF_FDIR_INSET_IPV4_GTPU,\t\tIAVF_INSET_NONE},\n+\t{iavf_pattern_eth_ipv4_gtpu_eh,\t\tIAVF_FDIR_INSET_IPV4_GTPU_EH,\t\tIAVF_INSET_NONE},\n+\t{iavf_pattern_eth_ipv6_gtpu,\t\tIAVF_FDIR_INSET_IPV6_GTPU,\t\tIAVF_INSET_NONE},\n+\t{iavf_pattern_eth_ipv6_gtpu_eh,\t\tIAVF_FDIR_INSET_IPV6_GTPU_EH,\t\tIAVF_INSET_NONE},\n \t{iavf_pattern_eth_ipv4_l2tpv3,\t\tIAVF_FDIR_INSET_L2TPV3OIP,\t\tIAVF_INSET_NONE},\n \t{iavf_pattern_eth_ipv6_l2tpv3,\t\tIAVF_FDIR_INSET_L2TPV3OIP,\t\tIAVF_INSET_NONE},\n \t{iavf_pattern_eth_ipv4_esp,\t\tIAVF_FDIR_INSET_ESP,\t\t\tIAVF_INSET_NONE},\ndiff --git a/drivers/net/iavf/iavf_generic_flow.c b/drivers/net/iavf/iavf_generic_flow.c\nindex b6c26c4fd..c6d48f081 100644\n--- a/drivers/net/iavf/iavf_generic_flow.c\n+++ b/drivers/net/iavf/iavf_generic_flow.c\n@@ -315,7 +315,7 @@ enum rte_flow_item_type iavf_pattern_eth_qinq_ipv6_icmp6[] = {\n \tRTE_FLOW_ITEM_TYPE_END,\n };\n \n-/* GTPU */\n+/* IPV4 GTPU (EH) */\n enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu[] = {\n \tRTE_FLOW_ITEM_TYPE_ETH,\n \tRTE_FLOW_ITEM_TYPE_IPV4,\n@@ -333,6 +333,25 @@ enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh[] = {\n \tRTE_FLOW_ITEM_TYPE_END,\n };\n \n+/* IPV6 GTPU (EH) */\n+enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu[] = {\n+\tRTE_FLOW_ITEM_TYPE_ETH,\n+\tRTE_FLOW_ITEM_TYPE_IPV6,\n+\tRTE_FLOW_ITEM_TYPE_UDP,\n+\tRTE_FLOW_ITEM_TYPE_GTPU,\n+\tRTE_FLOW_ITEM_TYPE_END,\n+};\n+\n+enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_eh[] = {\n+\tRTE_FLOW_ITEM_TYPE_ETH,\n+\tRTE_FLOW_ITEM_TYPE_IPV6,\n+\tRTE_FLOW_ITEM_TYPE_UDP,\n+\tRTE_FLOW_ITEM_TYPE_GTPU,\n+\tRTE_FLOW_ITEM_TYPE_GTP_PSC,\n+\tRTE_FLOW_ITEM_TYPE_END,\n+};\n+\n+/* IPV4 GTPU IPv4 */\n enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_ipv4[] = {\n \tRTE_FLOW_ITEM_TYPE_ETH,\n \tRTE_FLOW_ITEM_TYPE_IPV4,\n@@ -342,6 +361,7 @@ enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_ipv4[] = {\n \tRTE_FLOW_ITEM_TYPE_END,\n };\n \n+/* IPV4 GTPU EH IPv4 */\n enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh_ipv4[] = {\n \tRTE_FLOW_ITEM_TYPE_ETH,\n \tRTE_FLOW_ITEM_TYPE_IPV4,\ndiff --git a/drivers/net/iavf/iavf_generic_flow.h b/drivers/net/iavf/iavf_generic_flow.h\nindex 978d0716b..8a6687542 100644\n--- a/drivers/net/iavf/iavf_generic_flow.h\n+++ b/drivers/net/iavf/iavf_generic_flow.h\n@@ -182,10 +182,18 @@ extern enum rte_flow_item_type iavf_pattern_eth_ipv6_icmp6[];\n extern enum rte_flow_item_type iavf_pattern_eth_vlan_ipv6_icmp6[];\n extern enum rte_flow_item_type iavf_pattern_eth_qinq_ipv6_icmp6[];\n \n-/* GTPU */\n+/* IPv4 GTPU (EH) */\n extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu[];\n-extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_ipv4[];\n extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh[];\n+\n+/* IPv6 GTPU (EH) */\n+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu[];\n+extern enum rte_flow_item_type iavf_pattern_eth_ipv6_gtpu_eh[];\n+\n+/* IPv4 GTPU IPv4 */\n+extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_ipv4[];\n+\n+/* IPv4 GTPU EH IPv4 */\n extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh_ipv4[];\n extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh_ipv4_udp[];\n extern enum rte_flow_item_type iavf_pattern_eth_ipv4_gtpu_eh_ipv4_tcp[];\n",
    "prefixes": [
        "v4",
        "2/2"
    ]
}