#define ICE_FDIR_INSET_GTPU_IPV4 (\
ICE_INSET_GTPU_TEID | ICE_INSET_GTPU_QFI)
-#define ICE_FDIR_INSET_GTPU_IPV4_TCP (\
- ICE_FDIR_INSET_GTPU_IPV4)
-
-#define ICE_FDIR_INSET_GTPU_IPV4_UDP (\
- ICE_FDIR_INSET_GTPU_IPV4)
-
-#define ICE_FDIR_INSET_GTPU_IPV4_UDP (\
- ICE_FDIR_INSET_GTPU_IPV4)
-
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_udp_vxlan_eth_ipv4_sctp,
ICE_FDIR_INSET_VXLAN_IPV4_SCTP, ICE_INSET_NONE},
{pattern_eth_ipv4_gtpu_ipv4, ICE_FDIR_INSET_GTPU_IPV4, ICE_INSET_NONE},
- {pattern_eth_ipv4_gtpu_ipv4_tcp,
- ICE_FDIR_INSET_GTPU_IPV4, ICE_INSET_NONE},
- {pattern_eth_ipv4_gtpu_ipv4_udp,
- ICE_FDIR_INSET_GTPU_IPV4, ICE_INSET_NONE},
};
static struct ice_flow_parser ice_fdir_parser_os;
if (!memcmp(ori_seg, seg, sizeof(*seg)))
return -EAGAIN;
} else {
- if (!memcmp(ori_seg, &seg[1], sizeof(*seg)))
+ if (!memcmp(&ori_seg[1], &seg[1], sizeof(*seg)))
return -EAGAIN;
}
if (ad->active_pkg_type == ICE_PKG_TYPE_COMMS)
parser = &ice_fdir_parser_comms;
- else
+ else if (ad->active_pkg_type == ICE_PKG_TYPE_OS_DEFAULT)
parser = &ice_fdir_parser_os;
+ else
+ return -EINVAL;
return ice_register_parser(parser, ad);
}