Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/94141/?format=api
https://patches.dpdk.org/api/patches/94141/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/patch/20210613000652.28191-55-ajit.khaparde@broadcom.com/", "project": { "id": 1, "url": "https://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": "<20210613000652.28191-55-ajit.khaparde@broadcom.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20210613000652.28191-55-ajit.khaparde@broadcom.com", "date": "2021-06-13T00:06:48", "name": "[v2,54/58] net/bnxt: add ICMPv6 parser to ULP", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": true, "hash": "316ab44c262bc92b0a22de33b944bc06980dbb30", "submitter": { "id": 501, "url": "https://patches.dpdk.org/api/people/501/?format=api", "name": "Ajit Khaparde", "email": "ajit.khaparde@broadcom.com" }, "delegate": { "id": 1766, "url": "https://patches.dpdk.org/api/users/1766/?format=api", "username": "ajitkhaparde", "first_name": "Ajit", "last_name": "Khaparde", "email": "ajit.khaparde@broadcom.com" }, "mbox": "https://patches.dpdk.org/project/dpdk/patch/20210613000652.28191-55-ajit.khaparde@broadcom.com/mbox/", "series": [ { "id": 17305, "url": "https://patches.dpdk.org/api/series/17305/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=17305", "date": "2021-06-13T00:05:54", "name": "enhancements to host based flow table management", "version": 2, "mbox": "https://patches.dpdk.org/series/17305/mbox/" } ], "comments": "https://patches.dpdk.org/api/patches/94141/comments/", "check": "success", "checks": "https://patches.dpdk.org/api/patches/94141/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 C5BECA0C41;\n\tSun, 13 Jun 2021 02:14:24 +0200 (CEST)", "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 7ED1A4120B;\n\tSun, 13 Jun 2021 02:09:23 +0200 (CEST)", "from mail-pg1-f180.google.com (mail-pg1-f180.google.com\n [209.85.215.180])\n by mails.dpdk.org (Postfix) with ESMTP id 4EAE6411AC\n for <dev@dpdk.org>; Sun, 13 Jun 2021 02:09:21 +0200 (CEST)", "by mail-pg1-f180.google.com with SMTP id e22so5604622pgv.10\n for <dev@dpdk.org>; Sat, 12 Jun 2021 17:09:21 -0700 (PDT)", "from localhost.localdomain ([192.19.223.252])\n by smtp.gmail.com with ESMTPSA id gg22sm12774609pjb.17.2021.06.12.17.09.19\n (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);\n Sat, 12 Jun 2021 17:09:19 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com;\n s=google;\n h=from:to:cc:subject:date:message-id:in-reply-to:references\n :mime-version; bh=Vp1bPwQzO041fEjmtXku154Y0wskw1TmIyBfIpksXbU=;\n b=MlVNyvu893OEKiq2RPTobnbgZyMfqmzR5til/1wz/ZmemHDHwn6T1hdBOgjf3Bt9ke\n zVwDNM1P8DUAztM6kcfRHinGF3L0lEu3vOLcbiohSD5ONj3H4wPOijvdXGISMOdnZYMK\n UqNtEq1AC9oYAmHTjeSkYNmsYDpkBRVXUPU5E=", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20161025;\n h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n :references:mime-version;\n bh=Vp1bPwQzO041fEjmtXku154Y0wskw1TmIyBfIpksXbU=;\n b=k0nI7xFMd1AKCLzt7tOTlWnczQTqDeR79W8HH0NPxOmBtAEu/Mu+AFtTsMMp5CudYA\n CdAlXZDRKmm2OFkRgZsxdbtQJCZn1iH7waySFMxv0W4dTrSYfTx/dwY7UPqm+gPbN09x\n MFLjETmOL/T0hT8XsmfVe63ewyDt6wCA2+u81XLWZGyiEeV7cXv6aV6MxZM+/zw9hx7C\n 11VSWY8xoE4YCtD+G80SM0so2I19nsa3jryXHfK+QiAZqHAkGk5MShqTXARAWMY66xTI\n fy9LyxIiR2OSkmVZ/tyeyX4ePUPh1Fh9qUySRZfufrRemqSHcNxkdlId+iOJ+x25SczD\n Wasw==", "X-Gm-Message-State": "AOAM533ww/bhlXTjRDwk8DyOWnubftZckode0nhGE6YNBWe9NQgYmEKC\n wCv6p40hxx+LS7qdJr64sBiYcQYciXHdlLwbacKUsV9HAj+EhadtH/ofEdw6wNnkF79CbumHtmV\n k8ihjlIOSdSCR0OMg5mXrEv4BajjEJrIA6T8XA2YVAYY+GWCYPryYXpgrENKwWxQ=", "X-Google-Smtp-Source": "\n ABdhPJzYEeOcLOGrnv3gFv7S5zWNB5LdNagIeyc3XHYRCybBi6s1uq+/bZiexG8uQ7Q9xnsENA2OBg==", "X-Received": "by 2002:a63:5064:: with SMTP id q36mr6207701pgl.196.1623542960101;\n Sat, 12 Jun 2021 17:09:20 -0700 (PDT)", "From": "Ajit Khaparde <ajit.khaparde@broadcom.com>", "To": "dev@dpdk.org", "Cc": "Kishore Padmanabha <kishore.padmanabha@broadcom.com>,\n Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com>,\n Randy Schacher <stuart.schacher@broadcom.com>", "Date": "Sat, 12 Jun 2021 17:06:48 -0700", "Message-Id": "<20210613000652.28191-55-ajit.khaparde@broadcom.com>", "X-Mailer": "git-send-email 2.21.1 (Apple Git-122.3)", "In-Reply-To": "<20210613000652.28191-1-ajit.khaparde@broadcom.com>", "References": "<20210530085929.29695-1-venkatkumar.duvvuru@broadcom.com>\n <20210613000652.28191-1-ajit.khaparde@broadcom.com>", "MIME-Version": "1.0", "Content-Type": "multipart/signed; protocol=\"application/pkcs7-signature\";\n micalg=sha-256; boundary=\"0000000000006f79e905c49a8de0\"", "X-Content-Filtered-By": "Mailman/MimeDel 2.1.29", "Subject": "[dpdk-dev] [PATCH v2 54/58] net/bnxt: add ICMPv6 parser to ULP", "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", "Sender": "\"dev\" <dev-bounces@dpdk.org>" }, "content": "From: Kishore Padmanabha <kishore.padmanabha@broadcom.com>\n\nThis patch adds support for parsing rte_flow items for ICMPv6 flows.\n\nSigned-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com>\nSigned-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com>\nReviewed-by: Randy Schacher <stuart.schacher@broadcom.com>\nReviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>\n---\n drivers/net/bnxt/tf_ulp/ulp_rte_handler_tbl.c | 4 +-\n drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 48 +++++++++++++++++++\n drivers/net/bnxt/tf_ulp/ulp_rte_parser.h | 5 ++\n 3 files changed, 55 insertions(+), 2 deletions(-)", "diff": "diff --git a/drivers/net/bnxt/tf_ulp/ulp_rte_handler_tbl.c b/drivers/net/bnxt/tf_ulp/ulp_rte_handler_tbl.c\nindex 7bd499faa6..35e9858727 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_rte_handler_tbl.c\n+++ b/drivers/net/bnxt/tf_ulp/ulp_rte_handler_tbl.c\n@@ -346,8 +346,8 @@ struct bnxt_ulp_rte_hdr_info ulp_hdr_info[] = {\n \t.proto_hdr_func = NULL\n \t},\n \t[RTE_FLOW_ITEM_TYPE_ICMP6] = {\n-\t.hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,\n-\t.proto_hdr_func = NULL\n+\t.hdr_type = BNXT_ULP_HDR_TYPE_SUPPORTED,\n+\t.proto_hdr_func = ulp_rte_icmp6_hdr_handler\n \t},\n \t[RTE_FLOW_ITEM_TYPE_ICMP6_ND_NS] = {\n \t.hdr_type = BNXT_ULP_HDR_TYPE_NOT_SUPPORTED,\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c\nindex b1a6b3de36..b8e69ffd1e 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c\n+++ b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c\n@@ -1599,6 +1599,54 @@ ulp_rte_icmp_hdr_handler(const struct rte_flow_item *item,\n \treturn BNXT_TF_RC_SUCCESS;\n }\n \n+/* Function to handle the parsing of RTE Flow item ICMP6 Header. */\n+int32_t\n+ulp_rte_icmp6_hdr_handler(const struct rte_flow_item *item,\n+\t\t\t struct ulp_rte_parser_params *params)\n+{\n+\tconst struct rte_flow_item_icmp6 *icmp_spec = item->spec;\n+\tconst struct rte_flow_item_icmp6 *icmp_mask = item->mask;\n+\tstruct ulp_rte_hdr_bitmap *hdr_bitmap = ¶ms->hdr_bitmap;\n+\tuint32_t idx = 0;\n+\tuint32_t size;\n+\n+\tif (ulp_rte_prsr_fld_size_validate(params, &idx,\n+\t\t\t\t\t BNXT_ULP_PROTO_HDR_ICMP_NUM)) {\n+\t\tBNXT_TF_DBG(ERR, \"Error parsing protocol header\\n\");\n+\t\treturn BNXT_TF_RC_ERROR;\n+\t}\n+\n+\tsize = sizeof(((struct rte_flow_item_icmp6 *)NULL)->type);\n+\tulp_rte_prsr_fld_mask(params, &idx, size,\n+\t\t\t ulp_deference_struct(icmp_spec, type),\n+\t\t\t ulp_deference_struct(icmp_mask, type),\n+\t\t\t ULP_PRSR_ACT_DEFAULT);\n+\n+\tsize = sizeof(((struct rte_flow_item_icmp6 *)NULL)->code);\n+\tulp_rte_prsr_fld_mask(params, &idx, size,\n+\t\t\t ulp_deference_struct(icmp_spec, code),\n+\t\t\t ulp_deference_struct(icmp_mask, code),\n+\t\t\t ULP_PRSR_ACT_DEFAULT);\n+\n+\tsize = sizeof(((struct rte_flow_item_icmp6 *)NULL)->checksum);\n+\tulp_rte_prsr_fld_mask(params, &idx, size,\n+\t\t\t ulp_deference_struct(icmp_spec, checksum),\n+\t\t\t ulp_deference_struct(icmp_mask, checksum),\n+\t\t\t ULP_PRSR_ACT_DEFAULT);\n+\n+\tif (ULP_BITMAP_ISSET(hdr_bitmap->bits, BNXT_ULP_HDR_BIT_O_IPV4)) {\n+\t\tBNXT_TF_DBG(ERR, \"Error: incorrect icmp version\\n\");\n+\t\treturn BNXT_TF_RC_ERROR;\n+\t}\n+\n+\t/* Update the hdr_bitmap with ICMP */\n+\tif (ULP_COMP_FLD_IDX_RD(params, BNXT_ULP_CF_IDX_L3_TUN))\n+\t\tULP_BITMAP_SET(hdr_bitmap->bits, BNXT_ULP_HDR_BIT_I_ICMP);\n+\telse\n+\t\tULP_BITMAP_SET(hdr_bitmap->bits, BNXT_ULP_HDR_BIT_O_ICMP);\n+\treturn BNXT_TF_RC_SUCCESS;\n+}\n+\n /* Function to handle the parsing of RTE Flow item void Header */\n int32_t\n ulp_rte_void_hdr_handler(const struct rte_flow_item *item __rte_unused,\ndiff --git a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.h b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.h\nindex 66abe8e656..bbba10108c 100644\n--- a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.h\n+++ b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.h\n@@ -147,6 +147,11 @@ int32_t\n ulp_rte_icmp_hdr_handler(const struct rte_flow_item *item,\n \t\t\t struct ulp_rte_parser_params *params);\n \n+/* Function to handle the parsing of RTE Flow item ICMP6 Header. */\n+int32_t\n+ulp_rte_icmp6_hdr_handler(const struct rte_flow_item *item,\n+\t\t\t struct ulp_rte_parser_params *params);\n+\n /* Function to handle the parsing of RTE Flow item void Header. */\n int32_t\n ulp_rte_void_hdr_handler(const struct rte_flow_item *item,\n", "prefixes": [ "v2", "54/58" ] }{ "id": 94141, "url": "