From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 59FD4A09EF; Mon, 21 Dec 2020 07:57:13 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id F40B6CC40; Mon, 21 Dec 2020 07:56:19 +0100 (CET) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id 01EDACBDC for ; Mon, 21 Dec 2020 07:56:17 +0100 (CET) IronPort-SDR: O4Jlu7sJ6VxYNO+GbENZFUuT05sNNBDg8AUPd1D4hWmF33HaCOm0OOeFO4uEgm1AdYYPZIoXFq OrjBsw2zVfJQ== X-IronPort-AV: E=McAfee;i="6000,8403,9841"; a="237252411" X-IronPort-AV: E=Sophos;i="5.78,436,1599548400"; d="scan'208";a="237252411" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Dec 2020 22:56:16 -0800 IronPort-SDR: OBqyXqaxmYN55f62QQvb5+ifg/ZQDoc2+7sfpl8ApTUowFtANq4YZUdoT7/QUyMkNZ/1RELYmR x4ZM1uS93arw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.78,436,1599548400"; d="scan'208";a="456007061" Received: from dpdk-zhirun-dev.sh.intel.com ([10.67.118.176]) by fmsmga001.fm.intel.com with ESMTP; 20 Dec 2020 22:56:13 -0800 From: Zhirun Yan To: dev@dpdk.org, qi.z.zhang@intel.com, yahui.cao@intel.com, xiao.w.wang@intel.com, junfeng.guo@intel.com Cc: simei.su@intel.com, ting.xu@intel.com, yuying.zhang@intel.com, Zhirun Yan Date: Mon, 21 Dec 2020 14:51:48 +0800 Message-Id: <20201221065150.1600719-4-zhirun.yan@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201221065150.1600719-1-zhirun.yan@intel.com> References: <20201221065150.1600719-1-zhirun.yan@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v1 3/5] net/ice: add outer input set mask to distinguish outer fields X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Add 64-bit input_set_mask_f for outer input set. input_set_mask_f is used for inner fields or non-tunnel fields. Adjust indentation of ice_pattern_match_item list in switch, RSS and FDIR for easy review. For fields in tunnel layer, like GTPU TEID, put them in outer part. Signed-off-by: Zhirun Yan --- drivers/net/ice/ice_fdir_filter.c | 110 ++++----- drivers/net/ice/ice_generic_flow.h | 1 + drivers/net/ice/ice_hash.c | 192 ++++++--------- drivers/net/ice/ice_switch_filter.c | 348 ++++++++++------------------ 4 files changed, 231 insertions(+), 420 deletions(-) diff --git a/drivers/net/ice/ice_fdir_filter.c b/drivers/net/ice/ice_fdir_filter.c index 1f2576a444..76e0a8df38 100644 --- a/drivers/net/ice/ice_fdir_filter.c +++ b/drivers/net/ice/ice_fdir_filter.c @@ -55,92 +55,74 @@ ICE_FDIR_INSET_ETH_IPV6 | \ ICE_INSET_SCTP_SRC_PORT | ICE_INSET_SCTP_DST_PORT) -#define ICE_FDIR_INSET_VXLAN_IPV4 (\ +#define ICE_FDIR_INSET_VXLAN_IPV4_L (\ ICE_INSET_IPV4_SRC | ICE_INSET_IPV4_DST) -#define ICE_FDIR_INSET_VXLAN_IPV4_TCP (\ - ICE_FDIR_INSET_VXLAN_IPV4 | \ +#define ICE_FDIR_INSET_VXLAN_IPV4_TCP_L (\ + ICE_FDIR_INSET_VXLAN_IPV4_L | \ ICE_INSET_TCP_SRC_PORT | ICE_INSET_TCP_DST_PORT) -#define ICE_FDIR_INSET_VXLAN_IPV4_UDP (\ - ICE_FDIR_INSET_VXLAN_IPV4 | \ +#define ICE_FDIR_INSET_VXLAN_IPV4_UDP_L (\ + ICE_FDIR_INSET_VXLAN_IPV4_L | \ ICE_INSET_UDP_SRC_PORT | ICE_INSET_UDP_DST_PORT) -#define ICE_FDIR_INSET_VXLAN_IPV4_SCTP (\ - ICE_FDIR_INSET_VXLAN_IPV4 | \ +#define ICE_FDIR_INSET_VXLAN_IPV4_SCTP_L (\ + ICE_FDIR_INSET_VXLAN_IPV4_L | \ ICE_INSET_SCTP_SRC_PORT | ICE_INSET_SCTP_DST_PORT) -#define ICE_FDIR_INSET_IPV4_GTPU (\ +#define ICE_FDIR_INSET_IPV4_GTPU_F (\ ICE_INSET_IPV4_SRC | ICE_INSET_IPV4_DST | ICE_INSET_GTPU_TEID) -#define ICE_FDIR_INSET_IPV4_GTPU_EH (\ +#define ICE_FDIR_INSET_IPV4_GTPU_EH_F (\ ICE_INSET_IPV4_SRC | ICE_INSET_IPV4_DST | \ ICE_INSET_GTPU_TEID | ICE_INSET_GTPU_QFI) -#define ICE_FDIR_INSET_IPV6_GTPU (\ +#define ICE_FDIR_INSET_IPV6_GTPU_F (\ ICE_INSET_IPV6_SRC | ICE_INSET_IPV6_DST | ICE_INSET_GTPU_TEID) -#define ICE_FDIR_INSET_IPV6_GTPU_EH (\ +#define ICE_FDIR_INSET_IPV6_GTPU_EH_F (\ ICE_INSET_IPV6_SRC | ICE_INSET_IPV6_DST | \ ICE_INSET_GTPU_TEID | ICE_INSET_GTPU_QFI) static struct ice_pattern_match_item ice_fdir_pattern_os[] = { - {pattern_eth_ipv4, ICE_FDIR_INSET_ETH_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp, ICE_FDIR_INSET_ETH_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_tcp, ICE_FDIR_INSET_ETH_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_sctp, ICE_FDIR_INSET_ETH_IPV4_SCTP, ICE_INSET_NONE}, - {pattern_eth_ipv6, ICE_FDIR_INSET_ETH_IPV6, ICE_INSET_NONE}, - {pattern_eth_ipv6_udp, ICE_FDIR_INSET_ETH_IPV6_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv6_tcp, ICE_FDIR_INSET_ETH_IPV6_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv6_sctp, ICE_FDIR_INSET_ETH_IPV6_SCTP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_ipv4, - ICE_FDIR_INSET_VXLAN_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_ipv4_udp, - ICE_FDIR_INSET_VXLAN_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_ipv4_tcp, - ICE_FDIR_INSET_VXLAN_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_ipv4_sctp, - ICE_FDIR_INSET_VXLAN_IPV4_SCTP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4, - ICE_FDIR_INSET_VXLAN_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_udp, - ICE_FDIR_INSET_VXLAN_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_tcp, - ICE_FDIR_INSET_VXLAN_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_sctp, - ICE_FDIR_INSET_VXLAN_IPV4_SCTP, ICE_INSET_NONE}, + {pattern_eth_ipv4, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_tcp, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv4_sctp, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV4_SCTP, ICE_INSET_NONE}, + {pattern_eth_ipv6, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV6, ICE_INSET_NONE}, + {pattern_eth_ipv6_udp, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV6_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv6_tcp, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV6_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv6_sctp, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV6_SCTP, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_ipv4, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_ipv4_udp, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_UDP_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_ipv4_tcp, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_TCP_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_ipv4_sctp, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_SCTP_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_udp, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_UDP_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_tcp, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_TCP_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_sctp, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_SCTP_L, ICE_INSET_NONE}, }; static struct ice_pattern_match_item ice_fdir_pattern_comms[] = { - {pattern_ethertype, ICE_FDIR_INSET_ETH, ICE_INSET_NONE}, - {pattern_eth_ipv4, ICE_FDIR_INSET_ETH_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp, ICE_FDIR_INSET_ETH_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_tcp, ICE_FDIR_INSET_ETH_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_sctp, ICE_FDIR_INSET_ETH_IPV4_SCTP, ICE_INSET_NONE}, - {pattern_eth_ipv6, ICE_FDIR_INSET_ETH_IPV6, ICE_INSET_NONE}, - {pattern_eth_ipv6_udp, ICE_FDIR_INSET_ETH_IPV6_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv6_tcp, ICE_FDIR_INSET_ETH_IPV6_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv6_sctp, ICE_FDIR_INSET_ETH_IPV6_SCTP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_ipv4, - ICE_FDIR_INSET_VXLAN_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_ipv4_udp, - ICE_FDIR_INSET_VXLAN_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_ipv4_tcp, - ICE_FDIR_INSET_VXLAN_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_ipv4_sctp, - ICE_FDIR_INSET_VXLAN_IPV4_SCTP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4, - ICE_FDIR_INSET_VXLAN_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_udp, - ICE_FDIR_INSET_VXLAN_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_tcp, - ICE_FDIR_INSET_VXLAN_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_sctp, - ICE_FDIR_INSET_VXLAN_IPV4_SCTP, ICE_INSET_NONE}, - {pattern_eth_ipv4_gtpu, ICE_FDIR_INSET_IPV4_GTPU, ICE_INSET_NONE}, - {pattern_eth_ipv4_gtpu_eh, ICE_FDIR_INSET_IPV4_GTPU_EH, ICE_INSET_NONE}, - {pattern_eth_ipv6_gtpu, ICE_FDIR_INSET_IPV6_GTPU, ICE_INSET_NONE}, - {pattern_eth_ipv6_gtpu_eh, ICE_FDIR_INSET_IPV6_GTPU_EH, ICE_INSET_NONE}, + {pattern_ethertype, ICE_INSET_NONE, ICE_FDIR_INSET_ETH, ICE_INSET_NONE}, + {pattern_eth_ipv4, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_tcp, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv4_sctp, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV4_SCTP, ICE_INSET_NONE}, + {pattern_eth_ipv6, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV6, ICE_INSET_NONE}, + {pattern_eth_ipv6_udp, ICE_INSET_NONE, ICE_FDIR_INSET_ETH_IPV6_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_ipv4, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_ipv4_udp, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_UDP_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_ipv4_tcp, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_TCP_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_ipv4_sctp, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_SCTP_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_udp, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_UDP_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_tcp, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_TCP_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_sctp, ICE_INSET_NONE, ICE_FDIR_INSET_VXLAN_IPV4_SCTP_L, ICE_INSET_NONE}, + {pattern_eth_ipv4_gtpu, ICE_FDIR_INSET_IPV4_GTPU_F, ICE_INSET_NONE, ICE_INSET_NONE}, + {pattern_eth_ipv4_gtpu_eh, ICE_FDIR_INSET_IPV4_GTPU_EH_F, ICE_INSET_NONE, ICE_INSET_NONE}, + {pattern_eth_ipv6_gtpu, ICE_FDIR_INSET_IPV6_GTPU_F, ICE_INSET_NONE, ICE_INSET_NONE}, + {pattern_eth_ipv6_gtpu_eh, ICE_FDIR_INSET_IPV6_GTPU_EH_F, ICE_INSET_NONE, ICE_INSET_NONE}, }; static struct ice_flow_parser ice_fdir_parser_os; diff --git a/drivers/net/ice/ice_generic_flow.h b/drivers/net/ice/ice_generic_flow.h index a03b2fc21d..f15c262625 100644 --- a/drivers/net/ice/ice_generic_flow.h +++ b/drivers/net/ice/ice_generic_flow.h @@ -473,6 +473,7 @@ enum ice_flow_classification_stage { struct ice_pattern_match_item { enum rte_flow_item_type *pattern_list; /* pattern_list must end with RTE_FLOW_ITEM_TYPE_END */ + uint64_t input_set_mask_f; uint64_t input_set_mask; void *meta; }; diff --git a/drivers/net/ice/ice_hash.c b/drivers/net/ice/ice_hash.c index fe3e06c579..72558161bf 100644 --- a/drivers/net/ice/ice_hash.c +++ b/drivers/net/ice/ice_hash.c @@ -315,135 +315,77 @@ struct rss_type_match_hdr hint_eth_pppoes = { /* Supported pattern for os default package. */ static struct ice_pattern_match_item ice_hash_pattern_list_os[] = { - {pattern_eth_ipv4, ICE_INSET_NONE, &hint_eth_ipv4}, - {pattern_eth_ipv4_udp, ICE_INSET_NONE, &hint_eth_ipv4_udp}, - {pattern_eth_ipv4_tcp, ICE_INSET_NONE, &hint_eth_ipv4_tcp}, - {pattern_eth_ipv4_sctp, ICE_INSET_NONE, &hint_eth_ipv4_sctp}, - {pattern_eth_ipv6, ICE_INSET_NONE, &hint_eth_ipv6}, - {pattern_eth_ipv6_udp, ICE_INSET_NONE, &hint_eth_ipv6_udp}, - {pattern_eth_ipv6_tcp, ICE_INSET_NONE, &hint_eth_ipv6_tcp}, - {pattern_eth_ipv6_sctp, ICE_INSET_NONE, &hint_eth_ipv6_sctp}, - {pattern_empty, ICE_INSET_NONE, &hint_empty}, + {pattern_eth_ipv4, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4}, + {pattern_eth_ipv4_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_udp}, + {pattern_eth_ipv4_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_tcp}, + {pattern_eth_ipv4_sctp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_sctp}, + {pattern_eth_ipv6, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6}, + {pattern_eth_ipv6_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_udp}, + {pattern_eth_ipv6_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_tcp}, + {pattern_eth_ipv6_sctp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_sctp}, + {pattern_empty, ICE_INSET_NONE, ICE_INSET_NONE, &hint_empty}, }; /* Supported pattern for comms package. */ static struct ice_pattern_match_item ice_hash_pattern_list_comms[] = { - {pattern_empty, ICE_INSET_NONE, - &hint_empty}, - {pattern_eth_ipv4, ICE_INSET_NONE, - &hint_eth_ipv4}, - {pattern_eth_ipv4_udp, ICE_INSET_NONE, - &hint_eth_ipv4_udp}, - {pattern_eth_ipv4_tcp, ICE_INSET_NONE, - &hint_eth_ipv4_tcp}, - {pattern_eth_ipv4_sctp, ICE_INSET_NONE, - &hint_eth_ipv4_sctp}, - {pattern_eth_ipv4_gtpu_ipv4, ICE_INSET_NONE, - &hint_eth_ipv4_gtpu_ipv4}, - {pattern_eth_ipv4_gtpu_ipv4_udp, ICE_INSET_NONE, - &hint_eth_ipv4_gtpu_ipv4_udp}, - {pattern_eth_ipv4_gtpu_ipv4_tcp, ICE_INSET_NONE, - &hint_eth_ipv4_gtpu_ipv4_tcp}, - {pattern_eth_ipv4_gtpu_ipv6, ICE_INSET_NONE, - &hint_eth_ipv4_gtpu_ipv6}, - {pattern_eth_ipv4_gtpu_ipv6_udp, ICE_INSET_NONE, - &hint_eth_ipv4_gtpu_ipv6_udp}, - {pattern_eth_ipv4_gtpu_ipv6_tcp, ICE_INSET_NONE, - &hint_eth_ipv4_gtpu_ipv6_tcp}, - {pattern_eth_ipv6_gtpu_ipv4, ICE_INSET_NONE, - &hint_eth_ipv6_gtpu_ipv4}, - {pattern_eth_ipv6_gtpu_ipv4_udp, ICE_INSET_NONE, - &hint_eth_ipv6_gtpu_ipv4_udp}, - {pattern_eth_ipv6_gtpu_ipv4_tcp, ICE_INSET_NONE, - &hint_eth_ipv6_gtpu_ipv4_tcp}, - {pattern_eth_ipv6_gtpu_ipv6, ICE_INSET_NONE, - &hint_eth_ipv6_gtpu_ipv6}, - {pattern_eth_ipv6_gtpu_ipv6_udp, ICE_INSET_NONE, - &hint_eth_ipv6_gtpu_ipv6_udp}, - {pattern_eth_ipv6_gtpu_ipv6_tcp, ICE_INSET_NONE, - &hint_eth_ipv6_gtpu_ipv6_tcp}, - {pattern_eth_ipv4_gtpu_eh_ipv4, ICE_INSET_NONE, - &hint_eth_ipv4_gtpu_eh_ipv4}, - {pattern_eth_ipv4_gtpu_eh_ipv4_udp, ICE_INSET_NONE, - &hint_eth_ipv4_gtpu_eh_ipv4_udp}, - {pattern_eth_ipv4_gtpu_eh_ipv4_tcp, ICE_INSET_NONE, - &hint_eth_ipv4_gtpu_eh_ipv4_tcp}, - {pattern_eth_ipv4_gtpu_eh_ipv6, ICE_INSET_NONE, - &hint_eth_ipv4_gtpu_eh_ipv6}, - {pattern_eth_ipv4_gtpu_eh_ipv6_udp, ICE_INSET_NONE, - &hint_eth_ipv4_gtpu_eh_ipv6_udp}, - {pattern_eth_ipv4_gtpu_eh_ipv6_tcp, ICE_INSET_NONE, - &hint_eth_ipv4_gtpu_eh_ipv6_tcp}, - {pattern_eth_ipv6_gtpu_eh_ipv4, ICE_INSET_NONE, - &hint_eth_ipv6_gtpu_eh_ipv4}, - {pattern_eth_ipv6_gtpu_eh_ipv4_udp, ICE_INSET_NONE, - &hint_eth_ipv6_gtpu_eh_ipv4_udp}, - {pattern_eth_ipv6_gtpu_eh_ipv4_tcp, ICE_INSET_NONE, - &hint_eth_ipv6_gtpu_eh_ipv4_tcp}, - {pattern_eth_ipv6_gtpu_eh_ipv6, ICE_INSET_NONE, - &hint_eth_ipv6_gtpu_eh_ipv6}, - {pattern_eth_ipv6_gtpu_eh_ipv6_udp, ICE_INSET_NONE, - &hint_eth_ipv6_gtpu_eh_ipv6_udp}, - {pattern_eth_ipv6_gtpu_eh_ipv6_tcp, ICE_INSET_NONE, - &hint_eth_ipv6_gtpu_eh_ipv6_tcp}, - {pattern_eth_pppoes_ipv4, ICE_INSET_NONE, - &hint_eth_pppoes_ipv4}, - {pattern_eth_pppoes_ipv4_udp, ICE_INSET_NONE, - &hint_eth_pppoes_ipv4_udp}, - {pattern_eth_pppoes_ipv4_tcp, ICE_INSET_NONE, - &hint_eth_pppoes_ipv4_tcp}, - {pattern_eth_ipv4_esp, ICE_INSET_NONE, - &hint_eth_ipv4_esp}, - {pattern_eth_ipv4_udp_esp, ICE_INSET_NONE, - &hint_eth_ipv4_udp_esp}, - {pattern_eth_ipv4_ah, ICE_INSET_NONE, - &hint_eth_ipv4_ah}, - {pattern_eth_ipv4_l2tp, ICE_INSET_NONE, - &hint_eth_ipv4_l2tpv3}, - {pattern_eth_ipv4_pfcp, ICE_INSET_NONE, - &hint_eth_ipv4_pfcp}, - {pattern_eth_vlan_ipv4, ICE_INSET_NONE, - &hint_eth_vlan_ipv4}, - {pattern_eth_vlan_ipv4_udp, ICE_INSET_NONE, - &hint_eth_vlan_ipv4_udp}, - {pattern_eth_vlan_ipv4_tcp, ICE_INSET_NONE, - &hint_eth_vlan_ipv4_tcp}, - {pattern_eth_vlan_ipv4_sctp, ICE_INSET_NONE, - &hint_eth_vlan_ipv4_sctp}, - {pattern_eth_ipv6, ICE_INSET_NONE, - &hint_eth_ipv6}, - {pattern_eth_ipv6_udp, ICE_INSET_NONE, - &hint_eth_ipv6_udp}, - {pattern_eth_ipv6_tcp, ICE_INSET_NONE, - &hint_eth_ipv6_tcp}, - {pattern_eth_ipv6_sctp, ICE_INSET_NONE, - &hint_eth_ipv6_sctp}, - {pattern_eth_ipv6_esp, ICE_INSET_NONE, - &hint_eth_ipv6_esp}, - {pattern_eth_ipv6_udp_esp, ICE_INSET_NONE, - &hint_eth_ipv6_udp_esp}, - {pattern_eth_ipv6_ah, ICE_INSET_NONE, - &hint_eth_ipv6_ah}, - {pattern_eth_ipv6_l2tp, ICE_INSET_NONE, - &hint_eth_ipv6_l2tpv3}, - {pattern_eth_ipv6_pfcp, ICE_INSET_NONE, - &hint_eth_ipv6_pfcp}, - {pattern_eth_vlan_ipv6, ICE_INSET_NONE, - &hint_eth_vlan_ipv6}, - {pattern_eth_vlan_ipv6_udp, ICE_INSET_NONE, - &hint_eth_vlan_ipv6_udp}, - {pattern_eth_vlan_ipv6_tcp, ICE_INSET_NONE, - &hint_eth_vlan_ipv6_tcp}, - {pattern_eth_vlan_ipv6_sctp, ICE_INSET_NONE, - &hint_eth_vlan_ipv6_sctp}, - {pattern_eth_pppoes_ipv6, ICE_INSET_NONE, - &hint_eth_pppoes_ipv6}, - {pattern_eth_pppoes_ipv6_udp, ICE_INSET_NONE, - &hint_eth_pppoes_ipv6_udp}, - {pattern_eth_pppoes_ipv6_tcp, ICE_INSET_NONE, - &hint_eth_pppoes_ipv6_tcp}, - {pattern_eth_pppoes, ICE_INSET_NONE, - &hint_eth_pppoes}, + {pattern_empty, ICE_INSET_NONE, ICE_INSET_NONE, &hint_empty}, + {pattern_eth_ipv4, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4}, + {pattern_eth_ipv4_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_udp}, + {pattern_eth_ipv4_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_tcp}, + {pattern_eth_ipv4_sctp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_sctp}, + {pattern_eth_ipv4_gtpu_ipv4, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_gtpu_ipv4}, + {pattern_eth_ipv4_gtpu_ipv4_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_gtpu_ipv4_udp}, + {pattern_eth_ipv4_gtpu_ipv4_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_gtpu_ipv4_tcp}, + {pattern_eth_ipv4_gtpu_ipv6, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_gtpu_ipv6}, + {pattern_eth_ipv4_gtpu_ipv6_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_gtpu_ipv6_udp}, + {pattern_eth_ipv4_gtpu_ipv6_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_gtpu_ipv6_tcp}, + {pattern_eth_ipv6_gtpu_ipv4, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_gtpu_ipv4}, + {pattern_eth_ipv6_gtpu_ipv4_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_gtpu_ipv4_udp}, + {pattern_eth_ipv6_gtpu_ipv4_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_gtpu_ipv4_tcp}, + {pattern_eth_ipv6_gtpu_ipv6, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_gtpu_ipv6}, + {pattern_eth_ipv6_gtpu_ipv6_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_gtpu_ipv6_udp}, + {pattern_eth_ipv6_gtpu_ipv6_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_gtpu_ipv6_tcp}, + {pattern_eth_ipv4_gtpu_eh_ipv4, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_gtpu_eh_ipv4}, + {pattern_eth_ipv4_gtpu_eh_ipv4_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_gtpu_eh_ipv4_udp}, + {pattern_eth_ipv4_gtpu_eh_ipv4_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_gtpu_eh_ipv4_tcp}, + {pattern_eth_ipv4_gtpu_eh_ipv6, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_gtpu_eh_ipv6}, + {pattern_eth_ipv4_gtpu_eh_ipv6_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_gtpu_eh_ipv6_udp}, + {pattern_eth_ipv4_gtpu_eh_ipv6_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_gtpu_eh_ipv6_tcp}, + {pattern_eth_ipv6_gtpu_eh_ipv4, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_gtpu_eh_ipv4}, + {pattern_eth_ipv6_gtpu_eh_ipv4_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_gtpu_eh_ipv4_udp}, + {pattern_eth_ipv6_gtpu_eh_ipv4_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_gtpu_eh_ipv4_tcp}, + {pattern_eth_ipv6_gtpu_eh_ipv6, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_gtpu_eh_ipv6}, + {pattern_eth_ipv6_gtpu_eh_ipv6_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_gtpu_eh_ipv6_udp}, + {pattern_eth_ipv6_gtpu_eh_ipv6_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_gtpu_eh_ipv6_tcp}, + {pattern_eth_pppoes_ipv4, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_pppoes_ipv4}, + {pattern_eth_pppoes_ipv4_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_pppoes_ipv4_udp}, + {pattern_eth_pppoes_ipv4_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_pppoes_ipv4_tcp}, + {pattern_eth_ipv4_esp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_esp}, + {pattern_eth_ipv4_udp_esp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_udp_esp}, + {pattern_eth_ipv4_ah, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_ah}, + {pattern_eth_ipv4_l2tp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_l2tpv3}, + {pattern_eth_ipv4_pfcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv4_pfcp}, + {pattern_eth_vlan_ipv4, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_vlan_ipv4}, + {pattern_eth_vlan_ipv4_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_vlan_ipv4_udp}, + {pattern_eth_vlan_ipv4_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_vlan_ipv4_tcp}, + {pattern_eth_vlan_ipv4_sctp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_vlan_ipv4_sctp}, + {pattern_eth_ipv6, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6}, + {pattern_eth_ipv6_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_udp}, + {pattern_eth_ipv6_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_tcp}, + {pattern_eth_ipv6_sctp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_sctp}, + {pattern_eth_ipv6_esp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_esp}, + {pattern_eth_ipv6_udp_esp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_udp_esp}, + {pattern_eth_ipv6_ah, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_ah}, + {pattern_eth_ipv6_l2tp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_l2tpv3}, + {pattern_eth_ipv6_pfcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_ipv6_pfcp}, + {pattern_eth_vlan_ipv6, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_vlan_ipv6}, + {pattern_eth_vlan_ipv6_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_vlan_ipv6_udp}, + {pattern_eth_vlan_ipv6_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_vlan_ipv6_tcp}, + {pattern_eth_vlan_ipv6_sctp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_vlan_ipv6_sctp}, + {pattern_eth_pppoes_ipv6, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_pppoes_ipv6}, + {pattern_eth_pppoes_ipv6_udp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_pppoes_ipv6_udp}, + {pattern_eth_pppoes_ipv6_tcp, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_pppoes_ipv6_tcp}, + {pattern_eth_pppoes, ICE_INSET_NONE, ICE_INSET_NONE, &hint_eth_pppoes}, }; /** diff --git a/drivers/net/ice/ice_switch_filter.c b/drivers/net/ice/ice_switch_filter.c index 8cba6eb7b1..48e1c69756 100644 --- a/drivers/net/ice/ice_switch_filter.c +++ b/drivers/net/ice/ice_switch_filter.c @@ -35,8 +35,8 @@ #define ICE_SW_INSET_ETHER ( \ ICE_INSET_DMAC | ICE_INSET_SMAC | ICE_INSET_ETHERTYPE) #define ICE_SW_INSET_MAC_VLAN ( \ - ICE_INSET_DMAC | ICE_INSET_SMAC | ICE_INSET_ETHERTYPE | \ - ICE_INSET_VLAN_OUTER) + ICE_INSET_DMAC | ICE_INSET_SMAC | ICE_INSET_ETHERTYPE | \ + ICE_INSET_VLAN_OUTER) #define ICE_SW_INSET_MAC_IPV4 ( \ ICE_INSET_DMAC | ICE_INSET_IPV4_DST | ICE_INSET_IPV4_SRC | \ ICE_INSET_IPV4_PROTO | ICE_INSET_IPV4_TTL | ICE_INSET_IPV4_TOS) @@ -93,7 +93,7 @@ ICE_INSET_TUN_IPV4_SRC | ICE_INSET_TUN_IPV4_DST | \ ICE_INSET_TUN_UDP_SRC_PORT | ICE_INSET_TUN_UDP_DST_PORT | \ ICE_INSET_TUN_IPV4_TOS) -#define ICE_SW_INSET_MAC_PPPOE ( \ +#define ICE_SW_INSET_MAC_PPPOE ( \ ICE_INSET_VLAN_OUTER | ICE_INSET_VLAN_INNER | \ ICE_INSET_DMAC | ICE_INSET_ETHERTYPE | ICE_INSET_PPPOE_SESSION) #define ICE_SW_INSET_MAC_PPPOE_PROTO ( \ @@ -144,246 +144,132 @@ static struct ice_flow_parser ice_switch_perm_parser_comms; static struct ice_pattern_match_item ice_switch_pattern_dist_os[] = { - {pattern_ethertype, - ICE_SW_INSET_ETHER, ICE_INSET_NONE}, - {pattern_ethertype_vlan, - ICE_SW_INSET_MAC_VLAN, ICE_INSET_NONE}, - {pattern_eth_arp, - ICE_INSET_NONE, ICE_INSET_NONE}, - {pattern_eth_ipv4, - ICE_SW_INSET_MAC_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp, - ICE_SW_INSET_MAC_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_tcp, - ICE_SW_INSET_MAC_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv6, - ICE_SW_INSET_MAC_IPV6, ICE_INSET_NONE}, - {pattern_eth_ipv6_udp, - ICE_SW_INSET_MAC_IPV6_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv6_tcp, - ICE_SW_INSET_MAC_IPV6_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4, - ICE_SW_INSET_DIST_VXLAN_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_udp, - ICE_SW_INSET_DIST_VXLAN_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_tcp, - ICE_SW_INSET_DIST_VXLAN_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_nvgre_eth_ipv4, - ICE_SW_INSET_DIST_NVGRE_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_nvgre_eth_ipv4_udp, - ICE_SW_INSET_DIST_NVGRE_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_nvgre_eth_ipv4_tcp, - ICE_SW_INSET_DIST_NVGRE_IPV4_TCP, ICE_INSET_NONE}, + {pattern_ethertype, ICE_INSET_NONE, ICE_SW_INSET_ETHER, ICE_INSET_NONE}, + {pattern_ethertype_vlan, ICE_INSET_NONE, ICE_SW_INSET_MAC_VLAN, ICE_INSET_NONE}, + {pattern_eth_arp, ICE_INSET_NONE, ICE_INSET_NONE, ICE_INSET_NONE}, + {pattern_eth_ipv4, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv6, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6, ICE_INSET_NONE}, + {pattern_eth_ipv6_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv6_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4, ICE_INSET_NONE, ICE_SW_INSET_DIST_VXLAN_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_DIST_VXLAN_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_DIST_VXLAN_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv4_nvgre_eth_ipv4, ICE_INSET_NONE, ICE_SW_INSET_DIST_NVGRE_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_nvgre_eth_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_DIST_NVGRE_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_nvgre_eth_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_DIST_NVGRE_IPV4_TCP, ICE_INSET_NONE}, }; static struct ice_pattern_match_item ice_switch_pattern_dist_comms[] = { - {pattern_ethertype, - ICE_SW_INSET_ETHER, ICE_INSET_NONE}, - {pattern_ethertype_vlan, - ICE_SW_INSET_MAC_VLAN, ICE_INSET_NONE}, - {pattern_eth_arp, - ICE_INSET_NONE, ICE_INSET_NONE}, - {pattern_eth_ipv4, - ICE_SW_INSET_MAC_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp, - ICE_SW_INSET_MAC_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_tcp, - ICE_SW_INSET_MAC_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv6, - ICE_SW_INSET_MAC_IPV6, ICE_INSET_NONE}, - {pattern_eth_ipv6_udp, - ICE_SW_INSET_MAC_IPV6_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv6_tcp, - ICE_SW_INSET_MAC_IPV6_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4, - ICE_SW_INSET_DIST_VXLAN_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_udp, - ICE_SW_INSET_DIST_VXLAN_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_tcp, - ICE_SW_INSET_DIST_VXLAN_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_nvgre_eth_ipv4, - ICE_SW_INSET_DIST_NVGRE_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_nvgre_eth_ipv4_udp, - ICE_SW_INSET_DIST_NVGRE_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_nvgre_eth_ipv4_tcp, - ICE_SW_INSET_DIST_NVGRE_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_pppoes, - ICE_SW_INSET_MAC_PPPOE, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes, - ICE_SW_INSET_MAC_PPPOE, ICE_INSET_NONE}, - {pattern_eth_pppoes_proto, - ICE_SW_INSET_MAC_PPPOE_PROTO, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_proto, - ICE_SW_INSET_MAC_PPPOE_PROTO, ICE_INSET_NONE}, - {pattern_eth_pppoes_ipv4, - ICE_SW_INSET_MAC_PPPOE_IPV4, ICE_INSET_NONE}, - {pattern_eth_pppoes_ipv4_tcp, - ICE_SW_INSET_MAC_PPPOE_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_pppoes_ipv4_udp, - ICE_SW_INSET_MAC_PPPOE_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_pppoes_ipv6, - ICE_SW_INSET_MAC_PPPOE_IPV6, ICE_INSET_NONE}, - {pattern_eth_pppoes_ipv6_tcp, - ICE_SW_INSET_MAC_PPPOE_IPV6_TCP, ICE_INSET_NONE}, - {pattern_eth_pppoes_ipv6_udp, - ICE_SW_INSET_MAC_PPPOE_IPV6_UDP, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_ipv4, - ICE_SW_INSET_MAC_PPPOE_IPV4, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_ipv4_tcp, - ICE_SW_INSET_MAC_PPPOE_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_ipv4_udp, - ICE_SW_INSET_MAC_PPPOE_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_ipv6, - ICE_SW_INSET_MAC_PPPOE_IPV6, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_ipv6_tcp, - ICE_SW_INSET_MAC_PPPOE_IPV6_TCP, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_ipv6_udp, - ICE_SW_INSET_MAC_PPPOE_IPV6_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_esp, - ICE_SW_INSET_MAC_IPV4_ESP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_esp, - ICE_SW_INSET_MAC_IPV4_ESP, ICE_INSET_NONE}, - {pattern_eth_ipv6_esp, - ICE_SW_INSET_MAC_IPV6_ESP, ICE_INSET_NONE}, - {pattern_eth_ipv6_udp_esp, - ICE_SW_INSET_MAC_IPV6_ESP, ICE_INSET_NONE}, - {pattern_eth_ipv4_ah, - ICE_SW_INSET_MAC_IPV4_AH, ICE_INSET_NONE}, - {pattern_eth_ipv6_ah, - ICE_SW_INSET_MAC_IPV6_AH, ICE_INSET_NONE}, - {pattern_eth_ipv6_udp_ah, - ICE_INSET_NONE, ICE_INSET_NONE}, - {pattern_eth_ipv4_l2tp, - ICE_SW_INSET_MAC_IPV4_L2TP, ICE_INSET_NONE}, - {pattern_eth_ipv6_l2tp, - ICE_SW_INSET_MAC_IPV6_L2TP, ICE_INSET_NONE}, - {pattern_eth_ipv4_pfcp, - ICE_INSET_NONE, ICE_INSET_NONE}, - {pattern_eth_ipv6_pfcp, - ICE_INSET_NONE, ICE_INSET_NONE}, + {pattern_ethertype, ICE_INSET_NONE, ICE_SW_INSET_ETHER, ICE_INSET_NONE}, + {pattern_ethertype_vlan, ICE_INSET_NONE, ICE_SW_INSET_MAC_VLAN, ICE_INSET_NONE}, + {pattern_eth_arp, ICE_INSET_NONE, ICE_INSET_NONE, ICE_INSET_NONE}, + {pattern_eth_ipv4, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv6, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6, ICE_INSET_NONE}, + {pattern_eth_ipv6_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv6_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4, ICE_INSET_NONE, ICE_SW_INSET_DIST_VXLAN_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_DIST_VXLAN_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_DIST_VXLAN_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv4_nvgre_eth_ipv4, ICE_INSET_NONE, ICE_SW_INSET_DIST_NVGRE_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_nvgre_eth_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_DIST_NVGRE_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_nvgre_eth_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_DIST_NVGRE_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_pppoes, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE, ICE_INSET_NONE}, + {pattern_eth_pppoes_proto, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_PROTO, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_proto, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_PROTO, ICE_INSET_NONE}, + {pattern_eth_pppoes_ipv4, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV4, ICE_INSET_NONE}, + {pattern_eth_pppoes_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_pppoes_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_pppoes_ipv6, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV6, ICE_INSET_NONE}, + {pattern_eth_pppoes_ipv6_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV6_TCP, ICE_INSET_NONE}, + {pattern_eth_pppoes_ipv6_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV6_UDP, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_ipv4, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV4, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_ipv6, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV6, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_ipv6_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV6_TCP, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_ipv6_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV6_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_esp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_ESP, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_esp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_ESP, ICE_INSET_NONE}, + {pattern_eth_ipv6_esp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_ESP, ICE_INSET_NONE}, + {pattern_eth_ipv6_udp_esp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_ESP, ICE_INSET_NONE}, + {pattern_eth_ipv4_ah, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_AH, ICE_INSET_NONE}, + {pattern_eth_ipv6_ah, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_AH, ICE_INSET_NONE}, + {pattern_eth_ipv6_udp_ah, ICE_INSET_NONE, ICE_INSET_NONE, ICE_INSET_NONE}, + {pattern_eth_ipv4_l2tp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_L2TP, ICE_INSET_NONE}, + {pattern_eth_ipv6_l2tp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_L2TP, ICE_INSET_NONE}, + {pattern_eth_ipv4_pfcp, ICE_INSET_NONE, ICE_INSET_NONE, ICE_INSET_NONE}, + {pattern_eth_ipv6_pfcp, ICE_INSET_NONE, ICE_INSET_NONE, ICE_INSET_NONE}, }; static struct ice_pattern_match_item ice_switch_pattern_perm_os[] = { - {pattern_ethertype, - ICE_SW_INSET_ETHER, ICE_INSET_NONE}, - {pattern_ethertype_vlan, - ICE_SW_INSET_MAC_VLAN, ICE_INSET_NONE}, - {pattern_eth_arp, - ICE_INSET_NONE, ICE_INSET_NONE}, - {pattern_eth_ipv4, - ICE_SW_INSET_MAC_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp, - ICE_SW_INSET_MAC_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_tcp, - ICE_SW_INSET_MAC_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv6, - ICE_SW_INSET_MAC_IPV6, ICE_INSET_NONE}, - {pattern_eth_ipv6_udp, - ICE_SW_INSET_MAC_IPV6_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv6_tcp, - ICE_SW_INSET_MAC_IPV6_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4, - ICE_SW_INSET_PERM_TUNNEL_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_udp, - ICE_SW_INSET_PERM_TUNNEL_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_tcp, - ICE_SW_INSET_PERM_TUNNEL_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_nvgre_eth_ipv4, - ICE_SW_INSET_PERM_TUNNEL_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_nvgre_eth_ipv4_udp, - ICE_SW_INSET_PERM_TUNNEL_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_nvgre_eth_ipv4_tcp, - ICE_SW_INSET_PERM_TUNNEL_IPV4_TCP, ICE_INSET_NONE}, + {pattern_ethertype, ICE_INSET_NONE, ICE_SW_INSET_ETHER, ICE_INSET_NONE}, + {pattern_ethertype_vlan, ICE_INSET_NONE, ICE_SW_INSET_MAC_VLAN, ICE_INSET_NONE}, + {pattern_eth_arp, ICE_INSET_NONE, ICE_INSET_NONE, ICE_INSET_NONE}, + {pattern_eth_ipv4, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv6, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6, ICE_INSET_NONE}, + {pattern_eth_ipv6_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv6_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4, ICE_INSET_NONE, ICE_SW_INSET_PERM_TUNNEL_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_PERM_TUNNEL_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_PERM_TUNNEL_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv4_nvgre_eth_ipv4, ICE_INSET_NONE, ICE_SW_INSET_PERM_TUNNEL_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_nvgre_eth_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_PERM_TUNNEL_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_nvgre_eth_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_PERM_TUNNEL_IPV4_TCP, ICE_INSET_NONE}, }; static struct ice_pattern_match_item ice_switch_pattern_perm_comms[] = { - {pattern_ethertype, - ICE_SW_INSET_ETHER, ICE_INSET_NONE}, - {pattern_ethertype_vlan, - ICE_SW_INSET_MAC_VLAN, ICE_INSET_NONE}, - {pattern_eth_arp, - ICE_INSET_NONE, ICE_INSET_NONE}, - {pattern_eth_ipv4, - ICE_SW_INSET_MAC_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp, - ICE_SW_INSET_MAC_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_tcp, - ICE_SW_INSET_MAC_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv6, - ICE_SW_INSET_MAC_IPV6, ICE_INSET_NONE}, - {pattern_eth_ipv6_udp, - ICE_SW_INSET_MAC_IPV6_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv6_tcp, - ICE_SW_INSET_MAC_IPV6_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4, - ICE_SW_INSET_PERM_TUNNEL_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_udp, - ICE_SW_INSET_PERM_TUNNEL_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_vxlan_eth_ipv4_tcp, - ICE_SW_INSET_PERM_TUNNEL_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_ipv4_nvgre_eth_ipv4, - ICE_SW_INSET_PERM_TUNNEL_IPV4, ICE_INSET_NONE}, - {pattern_eth_ipv4_nvgre_eth_ipv4_udp, - ICE_SW_INSET_PERM_TUNNEL_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_nvgre_eth_ipv4_tcp, - ICE_SW_INSET_PERM_TUNNEL_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_pppoes, - ICE_SW_INSET_MAC_PPPOE, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes, - ICE_SW_INSET_MAC_PPPOE, ICE_INSET_NONE}, - {pattern_eth_pppoes_proto, - ICE_SW_INSET_MAC_PPPOE_PROTO, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_proto, - ICE_SW_INSET_MAC_PPPOE_PROTO, ICE_INSET_NONE}, - {pattern_eth_pppoes_ipv4, - ICE_SW_INSET_MAC_PPPOE_IPV4, ICE_INSET_NONE}, - {pattern_eth_pppoes_ipv4_tcp, - ICE_SW_INSET_MAC_PPPOE_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_pppoes_ipv4_udp, - ICE_SW_INSET_MAC_PPPOE_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_pppoes_ipv6, - ICE_SW_INSET_MAC_PPPOE_IPV6, ICE_INSET_NONE}, - {pattern_eth_pppoes_ipv6_tcp, - ICE_SW_INSET_MAC_PPPOE_IPV6_TCP, ICE_INSET_NONE}, - {pattern_eth_pppoes_ipv6_udp, - ICE_SW_INSET_MAC_PPPOE_IPV6_UDP, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_ipv4, - ICE_SW_INSET_MAC_PPPOE_IPV4, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_ipv4_tcp, - ICE_SW_INSET_MAC_PPPOE_IPV4_TCP, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_ipv4_udp, - ICE_SW_INSET_MAC_PPPOE_IPV4_UDP, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_ipv6, - ICE_SW_INSET_MAC_PPPOE_IPV6, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_ipv6_tcp, - ICE_SW_INSET_MAC_PPPOE_IPV6_TCP, ICE_INSET_NONE}, - {pattern_eth_vlan_pppoes_ipv6_udp, - ICE_SW_INSET_MAC_PPPOE_IPV6_UDP, ICE_INSET_NONE}, - {pattern_eth_ipv4_esp, - ICE_SW_INSET_MAC_IPV4_ESP, ICE_INSET_NONE}, - {pattern_eth_ipv4_udp_esp, - ICE_SW_INSET_MAC_IPV4_ESP, ICE_INSET_NONE}, - {pattern_eth_ipv6_esp, - ICE_SW_INSET_MAC_IPV6_ESP, ICE_INSET_NONE}, - {pattern_eth_ipv6_udp_esp, - ICE_SW_INSET_MAC_IPV6_ESP, ICE_INSET_NONE}, - {pattern_eth_ipv4_ah, - ICE_SW_INSET_MAC_IPV4_AH, ICE_INSET_NONE}, - {pattern_eth_ipv6_ah, - ICE_SW_INSET_MAC_IPV6_AH, ICE_INSET_NONE}, - {pattern_eth_ipv6_udp_ah, - ICE_INSET_NONE, ICE_INSET_NONE}, - {pattern_eth_ipv4_l2tp, - ICE_SW_INSET_MAC_IPV4_L2TP, ICE_INSET_NONE}, - {pattern_eth_ipv6_l2tp, - ICE_SW_INSET_MAC_IPV6_L2TP, ICE_INSET_NONE}, - {pattern_eth_ipv4_pfcp, - ICE_INSET_NONE, ICE_INSET_NONE}, - {pattern_eth_ipv6_pfcp, - ICE_INSET_NONE, ICE_INSET_NONE}, + {pattern_ethertype, ICE_INSET_NONE, ICE_SW_INSET_ETHER, ICE_INSET_NONE}, + {pattern_ethertype_vlan, ICE_INSET_NONE, ICE_SW_INSET_MAC_VLAN, ICE_INSET_NONE}, + {pattern_eth_arp, ICE_INSET_NONE, ICE_INSET_NONE, ICE_INSET_NONE}, + {pattern_eth_ipv4, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv6, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6, ICE_INSET_NONE}, + {pattern_eth_ipv6_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv6_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4, ICE_INSET_NONE, ICE_SW_INSET_PERM_TUNNEL_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_PERM_TUNNEL_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_vxlan_eth_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_PERM_TUNNEL_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_ipv4_nvgre_eth_ipv4, ICE_INSET_NONE, ICE_SW_INSET_PERM_TUNNEL_IPV4, ICE_INSET_NONE}, + {pattern_eth_ipv4_nvgre_eth_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_PERM_TUNNEL_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_nvgre_eth_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_PERM_TUNNEL_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_pppoes, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE, ICE_INSET_NONE}, + {pattern_eth_pppoes_proto, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_PROTO, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_proto, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_PROTO, ICE_INSET_NONE}, + {pattern_eth_pppoes_ipv4, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV4, ICE_INSET_NONE}, + {pattern_eth_pppoes_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_pppoes_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_pppoes_ipv6, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV6, ICE_INSET_NONE}, + {pattern_eth_pppoes_ipv6_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV6_TCP, ICE_INSET_NONE}, + {pattern_eth_pppoes_ipv6_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV6_UDP, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_ipv4, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV4, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_ipv4_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV4_TCP, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_ipv4_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV4_UDP, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_ipv6, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV6, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_ipv6_tcp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV6_TCP, ICE_INSET_NONE}, + {pattern_eth_vlan_pppoes_ipv6_udp, ICE_INSET_NONE, ICE_SW_INSET_MAC_PPPOE_IPV6_UDP, ICE_INSET_NONE}, + {pattern_eth_ipv4_esp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_ESP, ICE_INSET_NONE}, + {pattern_eth_ipv4_udp_esp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_ESP, ICE_INSET_NONE}, + {pattern_eth_ipv6_esp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_ESP, ICE_INSET_NONE}, + {pattern_eth_ipv6_udp_esp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_ESP, ICE_INSET_NONE}, + {pattern_eth_ipv4_ah, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_AH, ICE_INSET_NONE}, + {pattern_eth_ipv6_ah, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_AH, ICE_INSET_NONE}, + {pattern_eth_ipv6_udp_ah, ICE_INSET_NONE, ICE_INSET_NONE, ICE_INSET_NONE}, + {pattern_eth_ipv4_l2tp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV4_L2TP, ICE_INSET_NONE}, + {pattern_eth_ipv6_l2tp, ICE_INSET_NONE, ICE_SW_INSET_MAC_IPV6_L2TP, ICE_INSET_NONE}, + {pattern_eth_ipv4_pfcp, ICE_INSET_NONE, ICE_INSET_NONE, ICE_INSET_NONE}, + {pattern_eth_ipv6_pfcp, ICE_INSET_NONE, ICE_INSET_NONE, ICE_INSET_NONE}, }; static int -- 2.25.1