get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 45264,
    "url": "http://patches.dpdk.org/api/patches/45264/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20180925023442.134705-7-qi.z.zhang@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": "<20180925023442.134705-7-qi.z.zhang@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20180925023442.134705-7-qi.z.zhang@intel.com",
    "date": "2018-09-25T02:34:28",
    "name": "[06/20] net/i40e/base: enable cloud filters via tc flower",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "13c8eb8ecc25b8594f26ddb94c9782f2b474490d",
    "submitter": {
        "id": 504,
        "url": "http://patches.dpdk.org/api/people/504/?format=api",
        "name": "Qi Zhang",
        "email": "qi.z.zhang@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/20180925023442.134705-7-qi.z.zhang@intel.com/mbox/",
    "series": [
        {
            "id": 1477,
            "url": "http://patches.dpdk.org/api/series/1477/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=1477",
            "date": "2018-09-25T02:34:22",
            "name": "base code update",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/1477/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/45264/comments/",
    "check": "warning",
    "checks": "http://patches.dpdk.org/api/patches/45264/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@dpdk.org",
        "Delivered-To": "patchwork@dpdk.org",
        "Received": [
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 7175B1B187;\n\tTue, 25 Sep 2018 04:34:18 +0200 (CEST)",
            "from mga03.intel.com (mga03.intel.com [134.134.136.65])\n\tby dpdk.org (Postfix) with ESMTP id 12E205F3C\n\tfor <dev@dpdk.org>; Tue, 25 Sep 2018 04:34:09 +0200 (CEST)",
            "from orsmga005.jf.intel.com ([10.7.209.41])\n\tby orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t24 Sep 2018 19:34:08 -0700",
            "from dpdk51.sh.intel.com ([10.67.110.190])\n\tby orsmga005.jf.intel.com with ESMTP; 24 Sep 2018 19:33:50 -0700"
        ],
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.54,300,1534834800\"; d=\"scan'208\";a=\"259958521\"",
        "From": "Qi Zhang <qi.z.zhang@intel.com>",
        "To": "beilei.xing@intel.com",
        "Cc": "dev@dpdk.org, ferruh.yigit@intel.com, helin.zhang@intel.com,\n\tQi Zhang <qi.z.zhang@intel.com>",
        "Date": "Tue, 25 Sep 2018 10:34:28 +0800",
        "Message-Id": "<20180925023442.134705-7-qi.z.zhang@intel.com>",
        "X-Mailer": "git-send-email 2.13.6",
        "In-Reply-To": "<20180925023442.134705-1-qi.z.zhang@intel.com>",
        "References": "<20180925023442.134705-1-qi.z.zhang@intel.com>",
        "Subject": "[dpdk-dev] [PATCH 06/20] net/i40e/base: enable cloud filters via tc\n\tflower",
        "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\t<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\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "This patch enables tc-flower based hardware offloads. tc flower\nfilter provided by the kernel is configured as driver specific\ncloud filter. The patch implements functions and admin queue\ncommands needed to support cloud filters in the driver and\nadds cloud filters to configure these tc-flower filters.\n\nAlso it cover below API renaming for code clean.\n\n- i40e_aq_add_cloud_filters_big_buffer to\n  i40e_aq_add_cloud_filters_bb\n- i40e_aq_remove_cloud_filters_big_buffer to\n  i40e_aq_rem_cloud_filters_bb\n- i40e_aq_remove_cloud_filters to\n  i40e_aq_rem_cloud_filters\n\nSigned-off-by: Qi Zhang <qi.z.zhang@intel.com>\n---\n drivers/net/i40e/base/i40e_adminq_cmd.h |  3 ++\n drivers/net/i40e/base/i40e_common.c     | 55 +++++++++++++++++++--------------\n drivers/net/i40e/base/i40e_prototype.h  | 32 +++++++++----------\n drivers/net/i40e/base/i40e_type.h       |  1 +\n drivers/net/i40e/i40e_ethdev.c          | 28 ++++++++---------\n drivers/net/i40e/i40e_flow.c            | 10 +++---\n 6 files changed, 70 insertions(+), 59 deletions(-)",
    "diff": "diff --git a/drivers/net/i40e/base/i40e_adminq_cmd.h b/drivers/net/i40e/base/i40e_adminq_cmd.h\nindex d02890f98..343b48f25 100644\n--- a/drivers/net/i40e/base/i40e_adminq_cmd.h\n+++ b/drivers/net/i40e/base/i40e_adminq_cmd.h\n@@ -1378,6 +1378,9 @@ struct i40e_aqc_cloud_filters_element_data {\n \t\tstruct {\n \t\t\tu8 data[16];\n \t\t} v6;\n+\t\tstruct {\n+\t\t\t__le16 data[8];\n+\t\t} raw_v6;\n \t} ipaddr;\n \t__le16\tflags;\n #define I40E_AQC_ADD_CLOUD_FILTER_SHIFT\t\t\t0\ndiff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/net/i40e/base/i40e_common.c\nindex 77af8507f..18009be3b 100644\n--- a/drivers/net/i40e/base/i40e_common.c\n+++ b/drivers/net/i40e/base/i40e_common.c\n@@ -5746,21 +5746,21 @@ enum i40e_status_code i40e_aq_add_cloud_filters(struct i40e_hw *hw,\n }\n \n /**\n- * i40e_aq_add_cloud_filters_big_buffer\n+ * i40e_aq_add_cloud_filters_bb\n  * @hw: pointer to the hardware structure\n  * @seid: VSI seid to add cloud filters from\n  * @filters: Buffer which contains the filters in big buffer to be added\n  * @filter_count: number of filters contained in the buffer\n  *\n  * Set the cloud filters for a given VSI.  The contents of the\n- * i40e_aqc_add_rm_cloud_filt_elem_ext are filled in by the caller of\n+ * i40e_aqc_cloud_filters_element_bb are filled in by the caller of the\n  * the function.\n  *\n  **/\n-enum i40e_status_code i40e_aq_add_cloud_filters_big_buffer(struct i40e_hw *hw,\n-\tu16 seid,\n-\tstruct i40e_aqc_add_rm_cloud_filt_elem_ext *filters,\n-\tu8 filter_count)\n+enum i40e_status_code\n+i40e_aq_add_cloud_filters_bb(struct i40e_hw *hw, u16 seid,\n+\t\t\t     struct i40e_aqc_cloud_filters_element_bb *filters,\n+\t\t\t     u8 filter_count)\n {\n \tstruct i40e_aq_desc desc;\n \tstruct i40e_aqc_add_remove_cloud_filters *cmd =\n@@ -5777,9 +5777,8 @@ enum i40e_status_code i40e_aq_add_cloud_filters_big_buffer(struct i40e_hw *hw,\n \tdesc.flags |= CPU_TO_LE16((u16)(I40E_AQ_FLAG_BUF | I40E_AQ_FLAG_RD));\n \tcmd->num_filters = filter_count;\n \tcmd->seid = CPU_TO_LE16(seid);\n-\tcmd->big_buffer_flag = I40E_AQC_ADD_REM_CLOUD_CMD_BIG_BUFFER;\n+\tcmd->big_buffer_flag = I40E_AQC_ADD_CLOUD_CMD_BB;\n \n-\t/* adjust Geneve VNI for HW issue */\n \tfor (i = 0; i < filter_count; i++) {\n \t\tu16 tnl_type;\n \t\tu32 ti;\n@@ -5787,6 +5786,11 @@ enum i40e_status_code i40e_aq_add_cloud_filters_big_buffer(struct i40e_hw *hw,\n \t\ttnl_type = (LE16_TO_CPU(filters[i].element.flags) &\n \t\t\t   I40E_AQC_ADD_CLOUD_TNL_TYPE_MASK) >>\n \t\t\t   I40E_AQC_ADD_CLOUD_TNL_TYPE_SHIFT;\n+\n+\t\t/* Due to hardware eccentricities, the VNI for Geneve is shifted\n+\t\t * one more byte further than normally used for Tenant ID in\n+\t\t * other tunnel types.\n+\t\t */\n \t\tif (tnl_type == I40E_AQC_ADD_CLOUD_TNL_TYPE_GENEVE) {\n \t\t\tti = LE32_TO_CPU(filters[i].element.tenant_id);\n \t\t\tfilters[i].element.tenant_id = CPU_TO_LE32(ti << 8);\n@@ -5799,7 +5803,7 @@ enum i40e_status_code i40e_aq_add_cloud_filters_big_buffer(struct i40e_hw *hw,\n }\n \n /**\n- * i40e_aq_remove_cloud_filters\n+ * i40e_aq_rem_cloud_filters\n  * @hw: pointer to the hardware structure\n  * @seid: VSI seid to remove cloud filters from\n  * @filters: Buffer which contains the filters to be removed\n@@ -5810,10 +5814,10 @@ enum i40e_status_code i40e_aq_add_cloud_filters_big_buffer(struct i40e_hw *hw,\n  * of the function.\n  *\n  **/\n-enum i40e_status_code i40e_aq_remove_cloud_filters(struct i40e_hw *hw,\n-\tu16 seid,\n-\tstruct i40e_aqc_cloud_filters_element_data *filters,\n-\tu8 filter_count)\n+enum i40e_status_code\n+i40e_aq_rem_cloud_filters(struct i40e_hw *hw, u16 seid,\n+\t\t\t  struct i40e_aqc_cloud_filters_element_data *filters,\n+\t\t\t  u8 filter_count)\n {\n \tstruct i40e_aq_desc desc;\n \tstruct i40e_aqc_add_remove_cloud_filters *cmd =\n@@ -5838,22 +5842,21 @@ enum i40e_status_code i40e_aq_remove_cloud_filters(struct i40e_hw *hw,\n }\n \n /**\n- * i40e_aq_remove_cloud_filters_big_buffer\n+ * i40e_aq_rem_cloud_filters_bb\n  * @hw: pointer to the hardware structure\n  * @seid: VSI seid to remove cloud filters from\n  * @filters: Buffer which contains the filters in big buffer to be removed\n  * @filter_count: number of filters contained in the buffer\n  *\n- * Remove the cloud filters for a given VSI.  The contents of the\n- * i40e_aqc_add_rm_cloud_filt_elem_ext are filled in by the caller of\n- * the function.\n+ * Remove the big buffer cloud filters for a given VSI.  The contents of the\n+ * i40e_aqc_cloud_filters_element_bb are filled in by the caller of the\n+ * function.\n  *\n  **/\n-enum i40e_status_code i40e_aq_remove_cloud_filters_big_buffer(\n-\tstruct i40e_hw *hw,\n-\tu16 seid,\n-\tstruct i40e_aqc_add_rm_cloud_filt_elem_ext *filters,\n-\tu8 filter_count)\n+enum i40e_status_code\n+i40e_aq_rem_cloud_filters_bb(struct i40e_hw *hw, u16 seid,\n+\t\t\t     struct i40e_aqc_cloud_filters_element_bb *filters,\n+\t\t\t     u8 filter_count)\n {\n \tstruct i40e_aq_desc desc;\n \tstruct i40e_aqc_add_remove_cloud_filters *cmd =\n@@ -5870,9 +5873,8 @@ enum i40e_status_code i40e_aq_remove_cloud_filters_big_buffer(\n \tdesc.flags |= CPU_TO_LE16((u16)(I40E_AQ_FLAG_BUF | I40E_AQ_FLAG_RD));\n \tcmd->num_filters = filter_count;\n \tcmd->seid = CPU_TO_LE16(seid);\n-\tcmd->big_buffer_flag = I40E_AQC_ADD_REM_CLOUD_CMD_BIG_BUFFER;\n+\tcmd->big_buffer_flag = I40E_AQC_ADD_CLOUD_CMD_BB;\n \n-\t/* adjust Geneve VNI for HW issue */\n \tfor (i = 0; i < filter_count; i++) {\n \t\tu16 tnl_type;\n \t\tu32 ti;\n@@ -5880,6 +5882,11 @@ enum i40e_status_code i40e_aq_remove_cloud_filters_big_buffer(\n \t\ttnl_type = (LE16_TO_CPU(filters[i].element.flags) &\n \t\t\t   I40E_AQC_ADD_CLOUD_TNL_TYPE_MASK) >>\n \t\t\t   I40E_AQC_ADD_CLOUD_TNL_TYPE_SHIFT;\n+\n+\t\t/* Due to hardware eccentricities, the VNI for Geneve is shifted\n+\t\t * one more byte further than normally used for Tenant ID in\n+\t\t * other tunnel types.\n+\t\t */\n \t\tif (tnl_type == I40E_AQC_ADD_CLOUD_TNL_TYPE_GENEVE) {\n \t\t\tti = LE32_TO_CPU(filters[i].element.tenant_id);\n \t\t\tfilters[i].element.tenant_id = CPU_TO_LE32(ti << 8);\ndiff --git a/drivers/net/i40e/base/i40e_prototype.h b/drivers/net/i40e/base/i40e_prototype.h\nindex bdab055af..9dd07de2b 100644\n--- a/drivers/net/i40e/base/i40e_prototype.h\n+++ b/drivers/net/i40e/base/i40e_prototype.h\n@@ -375,24 +375,24 @@ enum i40e_status_code i40e_aq_query_switch_comp_bw_config(struct i40e_hw *hw,\n \t\tstruct i40e_asq_cmd_details *cmd_details);\n enum i40e_status_code i40e_aq_resume_port_tx(struct i40e_hw *hw,\n \t\t\t\tstruct i40e_asq_cmd_details *cmd_details);\n+enum i40e_status_code\n+i40e_aq_add_cloud_filters_bb(struct i40e_hw *hw, u16 seid,\n+\t\t\t     struct i40e_aqc_cloud_filters_element_bb *filters,\n+\t\t\t     u8 filter_count);\n+enum i40e_status_code\n+i40e_aq_add_cloud_filters(struct i40e_hw *hw, u16 vsi,\n+\t\t\t  struct i40e_aqc_cloud_filters_element_data *filters,\n+\t\t\t  u8 filter_count);\n+enum i40e_status_code\n+i40e_aq_rem_cloud_filters(struct i40e_hw *hw, u16 vsi,\n+\t\t\t  struct i40e_aqc_cloud_filters_element_data *filters,\n+\t\t\t  u8 filter_count);\n+enum i40e_status_code\n+i40e_aq_rem_cloud_filters_bb(struct i40e_hw *hw, u16 seid,\n+\t\t\t     struct i40e_aqc_cloud_filters_element_bb *filters,\n+\t\t\t     u8 filter_count);\n enum i40e_status_code i40e_read_lldp_cfg(struct i40e_hw *hw,\n \t\t\t\t\tstruct i40e_lldp_variables *lldp_cfg);\n-enum i40e_status_code i40e_aq_add_cloud_filters(struct i40e_hw *hw,\n-\t\tu16 vsi,\n-\t\tstruct i40e_aqc_cloud_filters_element_data *filters,\n-\t\tu8 filter_count);\n-enum i40e_status_code i40e_aq_add_cloud_filters_big_buffer(struct i40e_hw *hw,\n-\tu16 seid,\n-\tstruct i40e_aqc_add_rm_cloud_filt_elem_ext *filters,\n-\tu8 filter_count);\n-enum i40e_status_code i40e_aq_remove_cloud_filters(struct i40e_hw *hw,\n-\t\tu16 vsi,\n-\t\tstruct i40e_aqc_cloud_filters_element_data *filters,\n-\t\tu8 filter_count);\n-enum i40e_status_code i40e_aq_remove_cloud_filters_big_buffer(\n-\tstruct i40e_hw *hw, u16 seid,\n-\tstruct i40e_aqc_add_rm_cloud_filt_elem_ext *filters,\n-\tu8 filter_count);\n enum i40e_status_code i40e_aq_replace_cloud_filters(struct i40e_hw *hw,\n \t\tstruct i40e_aqc_replace_cloud_filters_cmd *filters,\n \t\tstruct i40e_aqc_replace_cloud_filters_cmd_buf *cmd_buf);\ndiff --git a/drivers/net/i40e/base/i40e_type.h b/drivers/net/i40e/base/i40e_type.h\nindex b50a82307..19d3596fa 100644\n--- a/drivers/net/i40e/base/i40e_type.h\n+++ b/drivers/net/i40e/base/i40e_type.h\n@@ -357,6 +357,7 @@ struct i40e_hw_capabilities {\n #define I40E_CLOUD_FILTER_MODE1\t0x6\n #define I40E_CLOUD_FILTER_MODE2\t0x7\n #define I40E_CLOUD_FILTER_MODE3\t0x8\n+#define I40E_SWITCH_MODE_MASK\t0xF\n \n \tu32  management_mode;\n \tu32  mng_protocols_over_mctp;\ndiff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c\nindex 706c82dc4..8a78a6a4b 100644\n--- a/drivers/net/i40e/i40e_ethdev.c\n+++ b/drivers/net/i40e/i40e_ethdev.c\n@@ -391,7 +391,7 @@ static int i40e_sw_ethertype_filter_insert(struct i40e_pf *pf,\n \t\t\t\t   struct i40e_ethertype_filter *filter);\n \n static int i40e_tunnel_filter_convert(\n-\tstruct i40e_aqc_add_rm_cloud_filt_elem_ext *cld_filter,\n+\tstruct i40e_aqc_cloud_filters_element_bb *cld_filter,\n \tstruct i40e_tunnel_filter *tunnel_filter);\n static int i40e_sw_tunnel_filter_insert(struct i40e_pf *pf,\n \t\t\t\tstruct i40e_tunnel_filter *tunnel_filter);\n@@ -7493,7 +7493,7 @@ i40e_dev_get_filter_type(uint16_t filter_type, uint16_t *flag)\n /* Convert tunnel filter structure */\n static int\n i40e_tunnel_filter_convert(\n-\tstruct i40e_aqc_add_rm_cloud_filt_elem_ext *cld_filter,\n+\tstruct i40e_aqc_cloud_filters_element_bb *cld_filter,\n \tstruct i40e_tunnel_filter *tunnel_filter)\n {\n \tether_addr_copy((struct ether_addr *)&cld_filter->element.outer_mac,\n@@ -7591,8 +7591,8 @@ i40e_dev_tunnel_filter_set(struct i40e_pf *pf,\n \tint val, ret = 0;\n \tstruct i40e_hw *hw = I40E_PF_TO_HW(pf);\n \tstruct i40e_vsi *vsi = pf->main_vsi;\n-\tstruct i40e_aqc_add_rm_cloud_filt_elem_ext *cld_filter;\n-\tstruct i40e_aqc_add_rm_cloud_filt_elem_ext *pfilter;\n+\tstruct i40e_aqc_cloud_filters_element_bb *cld_filter;\n+\tstruct i40e_aqc_cloud_filters_element_bb *pfilter;\n \tstruct i40e_tunnel_rule *tunnel_rule = &pf->tunnel;\n \tstruct i40e_tunnel_filter *tunnel, *node;\n \tstruct i40e_tunnel_filter check_filter; /* Check if filter exists */\n@@ -7700,7 +7700,7 @@ i40e_dev_tunnel_filter_set(struct i40e_pf *pf,\n \t\tif (ret < 0)\n \t\t\trte_free(tunnel);\n \t} else {\n-\t\tret = i40e_aq_remove_cloud_filters(hw, vsi->seid,\n+\t\tret = i40e_aq_rem_cloud_filters(hw, vsi->seid,\n \t\t\t\t\t\t   &cld_filter->element, 1);\n \t\tif (ret < 0) {\n \t\t\tPMD_DRV_LOG(ERR, \"Failed to delete a tunnel filter.\");\n@@ -8033,8 +8033,8 @@ i40e_dev_consistent_tunnel_filter_set(struct i40e_pf *pf,\n \tstruct i40e_pf_vf *vf = NULL;\n \tstruct i40e_hw *hw = I40E_PF_TO_HW(pf);\n \tstruct i40e_vsi *vsi;\n-\tstruct i40e_aqc_add_rm_cloud_filt_elem_ext *cld_filter;\n-\tstruct i40e_aqc_add_rm_cloud_filt_elem_ext *pfilter;\n+\tstruct i40e_aqc_cloud_filters_element_bb *cld_filter;\n+\tstruct i40e_aqc_cloud_filters_element_bb *pfilter;\n \tstruct i40e_tunnel_rule *tunnel_rule = &pf->tunnel;\n \tstruct i40e_tunnel_filter *tunnel, *node;\n \tstruct i40e_tunnel_filter check_filter; /* Check if filter exists */\n@@ -8237,7 +8237,7 @@ i40e_dev_consistent_tunnel_filter_set(struct i40e_pf *pf,\n \n \tif (add) {\n \t\tif (big_buffer)\n-\t\t\tret = i40e_aq_add_cloud_filters_big_buffer(hw,\n+\t\t\tret = i40e_aq_add_cloud_filters_bb(hw,\n \t\t\t\t\t\t   vsi->seid, cld_filter, 1);\n \t\telse\n \t\t\tret = i40e_aq_add_cloud_filters(hw,\n@@ -8260,11 +8260,11 @@ i40e_dev_consistent_tunnel_filter_set(struct i40e_pf *pf,\n \t\t\trte_free(tunnel);\n \t} else {\n \t\tif (big_buffer)\n-\t\t\tret = i40e_aq_remove_cloud_filters_big_buffer(\n+\t\t\tret = i40e_aq_rem_cloud_filters_bb(\n \t\t\t\thw, vsi->seid, cld_filter, 1);\n \t\telse\n-\t\t\tret = i40e_aq_remove_cloud_filters(hw, vsi->seid,\n-\t\t\t\t\t\t   &cld_filter->element, 1);\n+\t\t\tret = i40e_aq_rem_cloud_filters(hw, vsi->seid,\n+\t\t\t\t\t\t&cld_filter->element, 1);\n \t\tif (ret < 0) {\n \t\t\tPMD_DRV_LOG(ERR, \"Failed to delete a tunnel filter.\");\n \t\t\trte_free(cld_filter);\n@@ -11945,7 +11945,7 @@ i40e_tunnel_filter_restore(struct i40e_pf *pf)\n \tstruct i40e_tunnel_filter_list\n \t\t*tunnel_list = &pf->tunnel.tunnel_list;\n \tstruct i40e_tunnel_filter *f;\n-\tstruct i40e_aqc_add_rm_cloud_filt_elem_ext cld_filter;\n+\tstruct i40e_aqc_cloud_filters_element_bb cld_filter;\n \tbool big_buffer = 0;\n \n \tTAILQ_FOREACH(f, tunnel_list, rules) {\n@@ -11980,8 +11980,8 @@ i40e_tunnel_filter_restore(struct i40e_pf *pf)\n \t\t\tbig_buffer = 1;\n \n \t\tif (big_buffer)\n-\t\t\ti40e_aq_add_cloud_filters_big_buffer(hw,\n-\t\t\t\t\t     vsi->seid, &cld_filter, 1);\n+\t\t\ti40e_aq_add_cloud_filters_bb(hw,\n+\t\t\t\t\tvsi->seid, &cld_filter, 1);\n \t\telse\n \t\t\ti40e_aq_add_cloud_filters(hw, vsi->seid,\n \t\t\t\t\t\t  &cld_filter.element, 1);\ndiff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c\nindex c67b264de..6487596da 100644\n--- a/drivers/net/i40e/i40e_flow.c\n+++ b/drivers/net/i40e/i40e_flow.c\n@@ -4773,7 +4773,7 @@ i40e_flow_destroy_tunnel_filter(struct i40e_pf *pf,\n \tstruct i40e_hw *hw = I40E_PF_TO_HW(pf);\n \tstruct i40e_vsi *vsi;\n \tstruct i40e_pf_vf *vf;\n-\tstruct i40e_aqc_add_rm_cloud_filt_elem_ext cld_filter;\n+\tstruct i40e_aqc_cloud_filters_element_bb cld_filter;\n \tstruct i40e_tunnel_rule *tunnel_rule = &pf->tunnel;\n \tstruct i40e_tunnel_filter *node;\n \tbool big_buffer = 0;\n@@ -4808,11 +4808,11 @@ i40e_flow_destroy_tunnel_filter(struct i40e_pf *pf,\n \t\tbig_buffer = 1;\n \n \tif (big_buffer)\n-\t\tret = i40e_aq_remove_cloud_filters_big_buffer(hw, vsi->seid,\n-\t\t\t\t\t\t\t      &cld_filter, 1);\n+\t\tret = i40e_aq_rem_cloud_filters_bb(hw, vsi->seid,\n+\t\t\t\t\t\t&cld_filter, 1);\n \telse\n-\t\tret = i40e_aq_remove_cloud_filters(hw, vsi->seid,\n-\t\t\t\t\t\t   &cld_filter.element, 1);\n+\t\tret = i40e_aq_rem_cloud_filters(hw, vsi->seid,\n+\t\t\t\t\t\t&cld_filter.element, 1);\n \tif (ret < 0)\n \t\treturn -ENOTSUP;\n \n",
    "prefixes": [
        "06/20"
    ]
}