The input set has been divided into two parts to distinguish inner and outer field. ICE_INSET_TUN_* is the same as non tunnel macro definition. Clean redundant ICE_INSET_TUN_* codes.
Signed-off-by: Yuying Zhang <yuying.zh...@intel.com> --- drivers/net/ice/ice_fdir_filter.c | 22 +++++------ drivers/net/ice/ice_generic_flow.h | 61 ++--------------------------- drivers/net/ice/ice_switch_filter.c | 16 ++++---- 3 files changed, 22 insertions(+), 77 deletions(-) diff --git a/drivers/net/ice/ice_fdir_filter.c b/drivers/net/ice/ice_fdir_filter.c index 3b8ea32b1a..ad2dc40815 100644 --- a/drivers/net/ice/ice_fdir_filter.c +++ b/drivers/net/ice/ice_fdir_filter.c @@ -72,7 +72,7 @@ #define ICE_FDIR_INSET_ETH_IPV4_VXLAN (\ ICE_FDIR_INSET_ETH | ICE_FDIR_INSET_ETH_IPV4 | \ - ICE_INSET_TUN_VXLAN_VNI) + ICE_INSET_VXLAN_VNI) #define ICE_FDIR_INSET_IPV4_GTPU (\ ICE_INSET_IPV4_SRC | ICE_INSET_IPV4_DST | ICE_INSET_GTPU_TEID) @@ -893,17 +893,17 @@ ice_fdir_input_set_parse(uint64_t inset, enum ice_flow_field *field) {ICE_INSET_UDP_DST_PORT, ICE_FLOW_FIELD_IDX_UDP_DST_PORT}, {ICE_INSET_SCTP_SRC_PORT, ICE_FLOW_FIELD_IDX_SCTP_SRC_PORT}, {ICE_INSET_SCTP_DST_PORT, ICE_FLOW_FIELD_IDX_SCTP_DST_PORT}, - {ICE_INSET_TUN_IPV4_SRC, ICE_FLOW_FIELD_IDX_IPV4_SA}, - {ICE_INSET_TUN_IPV4_DST, ICE_FLOW_FIELD_IDX_IPV4_DA}, - {ICE_INSET_TUN_TCP_SRC_PORT, ICE_FLOW_FIELD_IDX_TCP_SRC_PORT}, - {ICE_INSET_TUN_TCP_DST_PORT, ICE_FLOW_FIELD_IDX_TCP_DST_PORT}, - {ICE_INSET_TUN_UDP_SRC_PORT, ICE_FLOW_FIELD_IDX_UDP_SRC_PORT}, - {ICE_INSET_TUN_UDP_DST_PORT, ICE_FLOW_FIELD_IDX_UDP_DST_PORT}, - {ICE_INSET_TUN_SCTP_SRC_PORT, ICE_FLOW_FIELD_IDX_SCTP_SRC_PORT}, - {ICE_INSET_TUN_SCTP_DST_PORT, ICE_FLOW_FIELD_IDX_SCTP_DST_PORT}, + {ICE_INSET_IPV4_SRC, ICE_FLOW_FIELD_IDX_IPV4_SA}, + {ICE_INSET_IPV4_DST, ICE_FLOW_FIELD_IDX_IPV4_DA}, + {ICE_INSET_TCP_SRC_PORT, ICE_FLOW_FIELD_IDX_TCP_SRC_PORT}, + {ICE_INSET_TCP_DST_PORT, ICE_FLOW_FIELD_IDX_TCP_DST_PORT}, + {ICE_INSET_UDP_SRC_PORT, ICE_FLOW_FIELD_IDX_UDP_SRC_PORT}, + {ICE_INSET_UDP_DST_PORT, ICE_FLOW_FIELD_IDX_UDP_DST_PORT}, + {ICE_INSET_SCTP_SRC_PORT, ICE_FLOW_FIELD_IDX_SCTP_SRC_PORT}, + {ICE_INSET_SCTP_DST_PORT, ICE_FLOW_FIELD_IDX_SCTP_DST_PORT}, {ICE_INSET_GTPU_TEID, ICE_FLOW_FIELD_IDX_GTPU_IP_TEID}, {ICE_INSET_GTPU_QFI, ICE_FLOW_FIELD_IDX_GTPU_EH_QFI}, - {ICE_INSET_TUN_VXLAN_VNI, ICE_FLOW_FIELD_IDX_VXLAN_VNI}, + {ICE_INSET_VXLAN_VNI, ICE_FLOW_FIELD_IDX_VXLAN_VNI}, }; for (i = 0, j = 0; i < RTE_DIM(ice_inset_map); i++) { @@ -1916,7 +1916,7 @@ ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad, } if (vxlan_mask->hdr.vx_vni) - *input_set |= ICE_INSET_TUN_VXLAN_VNI; + *input_set |= ICE_INSET_VXLAN_VNI; filter->input.vxlan_data.vni = vxlan_spec->hdr.vx_vni; diff --git a/drivers/net/ice/ice_generic_flow.h b/drivers/net/ice/ice_generic_flow.h index a4d0b6671d..b7634b9662 100644 --- a/drivers/net/ice/ice_generic_flow.h +++ b/drivers/net/ice/ice_generic_flow.h @@ -92,64 +92,9 @@ /* tunnel */ -#define ICE_INSET_TUN_SMAC \ - (ICE_PROT_MAC | ICE_SMAC) -#define ICE_INSET_TUN_DMAC \ - (ICE_PROT_MAC | ICE_DMAC) - -#define ICE_INSET_TUN_IPV4_SRC \ - (ICE_PROT_IPV4 | ICE_IP_SRC) -#define ICE_INSET_TUN_IPV4_DST \ - (ICE_PROT_IPV4 | ICE_IP_DST) -#define ICE_INSET_TUN_IPV4_TTL \ - (ICE_PROT_IPV4 | ICE_IP_TTL) -#define ICE_INSET_TUN_IPV4_PROTO \ - (ICE_PROT_IPV4 | ICE_IP_PROTO) -#define ICE_INSET_TUN_IPV4_TOS \ - (ICE_PROT_IPV4 | ICE_IP_TOS) -#define ICE_INSET_TUN_IPV6_SRC \ - (ICE_PROT_IPV6 | ICE_IP_SRC) -#define ICE_INSET_TUN_IPV6_DST \ - (ICE_PROT_IPV6 | ICE_IP_DST) -#define ICE_INSET_TUN_IPV6_HOP_LIMIT \ - (ICE_PROT_IPV6 | ICE_IP_TTL) -#define ICE_INSET_TUN_IPV6_NEXT_HDR \ - (ICE_PROT_IPV6 | ICE_IP_PROTO) -#define ICE_INSET_TUN_IPV6_TC \ - (ICE_PROT_IPV6 | ICE_IP_TOS) - -#define ICE_INSET_TUN_TCP_SRC_PORT \ - (ICE_PROT_TCP | ICE_SPORT) -#define ICE_INSET_TUN_TCP_DST_PORT \ - (ICE_PROT_TCP | ICE_DPORT) -#define ICE_INSET_TUN_UDP_SRC_PORT \ - (ICE_PROT_UDP | ICE_SPORT) -#define ICE_INSET_TUN_UDP_DST_PORT \ - (ICE_PROT_UDP | ICE_DPORT) -#define ICE_INSET_TUN_SCTP_SRC_PORT \ - (ICE_PROT_SCTP | ICE_SPORT) -#define ICE_INSET_TUN_SCTP_DST_PORT \ - (ICE_PROT_SCTP | ICE_DPORT) -#define ICE_INSET_TUN_ICMP4_SRC_PORT \ - (ICE_PROT_ICMP4 | ICE_SPORT) -#define ICE_INSET_TUN_ICMP4_DST_PORT \ - (ICE_PROT_ICMP4 | ICE_DPORT) -#define ICE_INSET_TUN_ICMP6_SRC_PORT \ - (ICE_PROT_ICMP6 | ICE_SPORT) -#define ICE_INSET_TUN_ICMP6_DST_PORT \ - (ICE_PROT_ICMP6 | ICE_DPORT) -#define ICE_INSET_TUN_ICMP4_TYPE \ - (ICE_PROT_ICMP4 | ICE_ICMP_TYPE) -#define ICE_INSET_TUN_ICMP4_CODE \ - (ICE_PROT_ICMP4 | ICE_ICMP_CODE) -#define ICE_INSET_TUN_ICMP6_TYPE \ - (ICE_PROT_ICMP6 | ICE_ICMP_TYPE) -#define ICE_INSET_TUN_ICMP6_CODE \ - (ICE_PROT_ICMP6 | ICE_ICMP_CODE) - -#define ICE_INSET_TUN_VXLAN_VNI \ +#define ICE_INSET_VXLAN_VNI \ (ICE_PROT_VXLAN | ICE_VXLAN_VNI) -#define ICE_INSET_TUN_NVGRE_TNI \ +#define ICE_INSET_NVGRE_TNI \ (ICE_PROT_NVGRE | ICE_NVGRE_TNI) #define ICE_INSET_GTPU_TEID \ (ICE_PROT_GTPU | ICE_GTPU_TEID) @@ -473,8 +418,8 @@ enum ice_flow_classification_stage { /* pattern structure */ struct ice_pattern_match_item { enum rte_flow_item_type *pattern_list; - uint64_t input_set_mask_o; /* used for tunnel outer or non tunnel fields */ /* pattern_list must end with RTE_FLOW_ITEM_TYPE_END */ + uint64_t input_set_mask_o; /* used for tunnel outer or non tunnel fields */ uint64_t input_set_mask_i; /* only used for tunnel inner fields */ void *meta; }; diff --git a/drivers/net/ice/ice_switch_filter.c b/drivers/net/ice/ice_switch_filter.c index c9d2ec7410..9603103b88 100644 --- a/drivers/net/ice/ice_switch_filter.c +++ b/drivers/net/ice/ice_switch_filter.c @@ -68,26 +68,26 @@ ICE_INSET_UDP_DST_PORT | ICE_INSET_UDP_SRC_PORT) #define ICE_SW_INSET_DIST_NVGRE_IPV4 ( \ ICE_INSET_IPV4_SRC | ICE_INSET_IPV4_DST | ICE_INSET_DMAC | \ - ICE_INSET_TUN_NVGRE_TNI) + ICE_INSET_NVGRE_TNI) #define ICE_SW_INSET_DIST_VXLAN_IPV4 ( \ ICE_INSET_IPV4_SRC | ICE_INSET_IPV4_DST | ICE_INSET_DMAC | \ - ICE_INSET_TUN_VXLAN_VNI) + ICE_INSET_VXLAN_VNI) #define ICE_SW_INSET_DIST_NVGRE_IPV4_TCP ( \ ICE_INSET_IPV4_SRC | ICE_INSET_IPV4_DST | \ ICE_INSET_TCP_SRC_PORT | ICE_INSET_TCP_DST_PORT | \ - ICE_INSET_DMAC | ICE_INSET_TUN_NVGRE_TNI) + ICE_INSET_DMAC | ICE_INSET_NVGRE_TNI) #define ICE_SW_INSET_DIST_NVGRE_IPV4_UDP ( \ ICE_INSET_IPV4_SRC | ICE_INSET_IPV4_DST | \ ICE_INSET_UDP_SRC_PORT | ICE_INSET_UDP_DST_PORT | \ - ICE_INSET_DMAC | ICE_INSET_TUN_NVGRE_TNI) + ICE_INSET_DMAC | ICE_INSET_NVGRE_TNI) #define ICE_SW_INSET_DIST_VXLAN_IPV4_TCP ( \ ICE_INSET_IPV4_SRC | ICE_INSET_IPV4_DST | \ ICE_INSET_TCP_SRC_PORT | ICE_INSET_TCP_DST_PORT | \ - ICE_INSET_DMAC | ICE_INSET_TUN_VXLAN_VNI) + ICE_INSET_DMAC | ICE_INSET_VXLAN_VNI) #define ICE_SW_INSET_DIST_VXLAN_IPV4_UDP ( \ ICE_INSET_IPV4_SRC | ICE_INSET_IPV4_DST | \ ICE_INSET_UDP_SRC_PORT | ICE_INSET_UDP_DST_PORT | \ - ICE_INSET_DMAC | ICE_INSET_TUN_VXLAN_VNI) + ICE_INSET_DMAC | ICE_INSET_VXLAN_VNI) #define ICE_SW_INSET_PERM_TUNNEL_IPV4 ( \ ICE_INSET_IPV4_SRC | ICE_INSET_IPV4_DST | \ ICE_INSET_IPV4_PROTO | ICE_INSET_IPV4_TOS) @@ -911,7 +911,7 @@ ice_switch_parse_pattern(const struct rte_flow_item pattern[], (vxlan_mask->vni[2] << 16) | (vxlan_mask->vni[1] << 8) | vxlan_mask->vni[0]; - *input |= ICE_INSET_TUN_VXLAN_VNI; + *input |= ICE_INSET_VXLAN_VNI; input_set_byte += 2; } t++; @@ -949,7 +949,7 @@ ice_switch_parse_pattern(const struct rte_flow_item pattern[], (nvgre_mask->tni[2] << 16) | (nvgre_mask->tni[1] << 8) | nvgre_mask->tni[0]; - *input |= ICE_INSET_TUN_NVGRE_TNI; + *input |= ICE_INSET_NVGRE_TNI; input_set_byte += 2; } t++; -- 2.25.1