| /linux/drivers/net/ethernet/intel/iavf/ |
| H A D | iavf_fdir.c | 39 struct iavf_fdir_fltr *fltr) in iavf_validate_fdir_fltr_masks() argument 41 if (fltr->eth_mask.etype && fltr->eth_mask.etype != htons(U16_MAX)) in iavf_validate_fdir_fltr_masks() 44 if (fltr->ip_ver == 4) { in iavf_validate_fdir_fltr_masks() 45 if (fltr->ip_mask.v4_addrs.src_ip && in iavf_validate_fdir_fltr_masks() 46 fltr->ip_mask.v4_addrs.src_ip != htonl(U32_MAX)) in iavf_validate_fdir_fltr_masks() 49 if (fltr->ip_mask.v4_addrs.dst_ip && in iavf_validate_fdir_fltr_masks() 50 fltr->ip_mask.v4_addrs.dst_ip != htonl(U32_MAX)) in iavf_validate_fdir_fltr_masks() 53 if (fltr->ip_mask.tos && fltr->ip_mask.tos != U8_MAX) in iavf_validate_fdir_fltr_masks() 55 } else if (fltr->ip_ver == 6) { in iavf_validate_fdir_fltr_masks() 56 if (memcmp(&fltr->ip_mask.v6_addrs.src_ip, &ipv6_addr_zero_mask, in iavf_validate_fdir_fltr_masks() [all …]
|
| H A D | iavf_ethtool.c | 852 struct iavf_fdir_fltr *fltr) in iavf_parse_rx_flow_user_data() argument 878 flex = &fltr->flex_words[cnt++]; in iavf_parse_rx_flow_user_data() 885 fltr->flex_cnt = cnt; in iavf_parse_rx_flow_user_data() 897 struct iavf_fdir_fltr *fltr) in iavf_fill_rx_flow_ext_data() argument 899 if (!fltr->ext_mask.usr_def[0] && !fltr->ext_mask.usr_def[1]) in iavf_fill_rx_flow_ext_data() 904 memcpy(fsp->h_ext.data, fltr->ext_data.usr_def, sizeof(fsp->h_ext.data)); in iavf_fill_rx_flow_ext_data() 905 memcpy(fsp->m_ext.data, fltr->ext_mask.usr_def, sizeof(fsp->m_ext.data)); in iavf_fill_rx_flow_ext_data() 1061 struct iavf_fdir_fltr *fltr; in iavf_get_fdir_fltr_ids() local 1072 list_for_each_entry(fltr, &adapter->fdir_list_head, list) { in iavf_get_fdir_fltr_ids() 1073 if (iavf_is_raw_fdir(fltr)) in iavf_get_fdir_fltr_ids() [all …]
|
| H A D | iavf_fdir.h | 127 static inline bool iavf_is_raw_fdir(struct iavf_fdir_fltr *fltr) in iavf_is_raw_fdir() argument 129 return !fltr->vc_add_msg.rule_cfg.proto_hdrs.count; in iavf_is_raw_fdir() 133 struct iavf_fdir_fltr *fltr); 134 int iavf_fill_fdir_add_msg(struct iavf_adapter *adapter, struct iavf_fdir_fltr *fltr); 135 void iavf_print_fdir_fltr(struct iavf_adapter *adapter, struct iavf_fdir_fltr *fltr); 136 bool iavf_fdir_is_dup_fltr(struct iavf_adapter *adapter, struct iavf_fdir_fltr *fltr); 138 struct iavf_fdir_fltr *fltr);
|
| H A D | iavf.h | 493 struct iavf_fdir_fltr *fltr) in iavf_inc_fdir_active_fltr() argument 495 if (iavf_is_raw_fdir(fltr)) in iavf_inc_fdir_active_fltr() 503 struct iavf_fdir_fltr *fltr) in iavf_dec_fdir_active_fltr() argument 505 if (iavf_is_raw_fdir(fltr)) in iavf_dec_fdir_active_fltr()
|
| H A D | iavf_main.c | 4229 struct iavf_fdir_fltr *fltr; in iavf_add_cls_u32() local 4240 fltr = kzalloc_obj(*fltr); in iavf_add_cls_u32() 4241 if (!fltr) in iavf_add_cls_u32() 4244 rule_cfg = &fltr->vc_add_msg.rule_cfg; in iavf_add_cls_u32() 4315 fltr->vc_add_msg.vsi_id = adapter->vsi.id; in iavf_add_cls_u32() 4316 fltr->cls_u32_handle = cls_u32->knode.handle; in iavf_add_cls_u32() 4317 return iavf_fdir_add_fltr(adapter, fltr); in iavf_add_cls_u32() 4320 kfree(fltr); in iavf_add_cls_u32()
|
| /linux/drivers/net/ethernet/intel/ice/ |
| H A D | ice_tc_lib.c | 19 static int ice_tc_count_lkups(u32 flags, struct ice_tc_flower_fltr *fltr) in ice_tc_count_lkups() argument 28 if (fltr->direction == ICE_ESWITCH_FLTR_EGRESS) in ice_tc_count_lkups() 184 ice_tc_fill_tunnel_outer(u32 flags, struct ice_tc_flower_fltr *fltr, in ice_tc_fill_tunnel_outer() argument 187 struct ice_tc_flower_lyr_2_4_hdrs *hdr = &fltr->outer_headers; in ice_tc_fill_tunnel_outer() 192 list[i].type = ice_proto_type_from_tunnel(fltr->tunnel_type); in ice_tc_fill_tunnel_outer() 193 switch (fltr->tunnel_type) { in ice_tc_fill_tunnel_outer() 196 tenant_id = be32_to_cpu(fltr->tenant_id) << 8; in ice_tc_fill_tunnel_outer() 202 list[i].h_u.nvgre_hdr.tni_flow = fltr->tenant_id; in ice_tc_fill_tunnel_outer() 209 list[i].h_u.gtp_hdr.teid = fltr->tenant_id; in ice_tc_fill_tunnel_outer() 229 list[i].type = ice_proto_type_from_tunnel(fltr->tunnel_type); in ice_tc_fill_tunnel_outer() [all …]
|
| H A D | ice_main.c | 8833 struct ice_tc_flower_fltr *fltr; in ice_rem_all_chnl_fltrs() local 8837 hlist_for_each_entry_safe(fltr, node, in ice_rem_all_chnl_fltrs() 8844 if (!ice_is_chnl_fltr(fltr)) in ice_rem_all_chnl_fltrs() 8847 rule.rid = fltr->rid; in ice_rem_all_chnl_fltrs() 8848 rule.rule_id = fltr->rule_id; in ice_rem_all_chnl_fltrs() 8849 rule.vsi_handle = fltr->dest_vsi_handle; in ice_rem_all_chnl_fltrs() 8858 } else if (fltr->dest_vsi) { in ice_rem_all_chnl_fltrs() 8860 if (fltr->dest_vsi->type == ICE_VSI_CHNL) { in ice_rem_all_chnl_fltrs() 8861 u32 flags = fltr->flags; in ice_rem_all_chnl_fltrs() 8863 fltr->dest_vsi->num_chnl_fltr--; in ice_rem_all_chnl_fltrs() [all …]
|
| /linux/drivers/net/ethernet/qlogic/qede/ |
| H A D | qede_filter.c | 127 qede_free_arfs_filter(struct qede_dev *edev, struct qede_arfs_fltr_node *fltr) in qede_free_arfs_filter() argument 129 kfree(fltr->data); in qede_free_arfs_filter() 131 if (fltr->sw_id < QEDE_RFS_MAX_FLTR) in qede_free_arfs_filter() 132 clear_bit(fltr->sw_id, edev->arfs->arfs_fltr_bmap); in qede_free_arfs_filter() 134 kfree(fltr); in qede_free_arfs_filter() 139 struct qede_arfs_fltr_node *fltr, in qede_enqueue_fltr_and_config_searcher() argument 142 fltr->mapping = dma_map_single(&edev->pdev->dev, fltr->data, in qede_enqueue_fltr_and_config_searcher() 143 fltr->buf_len, DMA_TO_DEVICE); in qede_enqueue_fltr_and_config_searcher() 144 if (dma_mapping_error(&edev->pdev->dev, fltr->mapping)) { in qede_enqueue_fltr_and_config_searcher() 146 qede_free_arfs_filter(edev, fltr); in qede_enqueue_fltr_and_config_searcher() [all …]
|
| /linux/drivers/net/ethernet/intel/ice/virt/ |
| H A D | fdir.c | 288 ice_vc_fdir_set_flow_fld(struct ice_vf *vf, struct virtchnl_fdir_add *fltr, in ice_vc_fdir_set_flow_fld() argument 292 struct virtchnl_fdir_rule *rule = &fltr->rule_cfg; in ice_vc_fdir_set_flow_fld() 748 ice_vc_fdir_config_input_set(struct ice_vf *vf, struct virtchnl_fdir_add *fltr, in ice_vc_fdir_config_input_set() argument 775 ret = ice_vc_fdir_set_flow_fld(vf, fltr, conf, seg); in ice_vc_fdir_config_input_set() 921 ice_vc_fdir_parse_pattern(struct ice_vf *vf, struct virtchnl_fdir_add *fltr, in ice_vc_fdir_parse_pattern() argument 924 struct virtchnl_proto_hdrs *proto = &fltr->rule_cfg.proto_hdrs; in ice_vc_fdir_parse_pattern() 1149 ice_vc_fdir_parse_action(struct ice_vf *vf, struct virtchnl_fdir_add *fltr, in ice_vc_fdir_parse_action() argument 1152 struct virtchnl_filter_action_set *as = &fltr->rule_cfg.action_set; in ice_vc_fdir_parse_action() 1223 ice_vc_validate_fdir_fltr(struct ice_vf *vf, struct virtchnl_fdir_add *fltr, in ice_vc_validate_fdir_fltr() argument 1226 struct virtchnl_proto_hdrs *proto = &fltr->rule_cfg.proto_hdrs; in ice_vc_validate_fdir_fltr() [all …]
|
| /linux/drivers/net/ethernet/broadcom/bnxt/ |
| H A D | bnxt.c | 5428 void bnxt_insert_usr_fltr(struct bnxt *bp, struct bnxt_filter_base *fltr) in bnxt_insert_usr_fltr() argument 5430 u8 type = fltr->type, flags = fltr->flags; in bnxt_insert_usr_fltr() 5432 INIT_LIST_HEAD(&fltr->list); in bnxt_insert_usr_fltr() 5435 list_add_tail(&fltr->list, &bp->usr_fltr_list); in bnxt_insert_usr_fltr() 5438 void bnxt_del_one_usr_fltr(struct bnxt *bp, struct bnxt_filter_base *fltr) in bnxt_del_one_usr_fltr() argument 5440 if (!list_empty(&fltr->list)) in bnxt_del_one_usr_fltr() 5441 list_del_init(&fltr->list); in bnxt_del_one_usr_fltr() 5455 static void bnxt_del_fltr(struct bnxt *bp, struct bnxt_filter_base *fltr) in bnxt_del_fltr() argument 5457 hlist_del(&fltr->hash); in bnxt_del_fltr() 5458 bnxt_del_one_usr_fltr(bp, fltr); in bnxt_del_fltr() [all …]
|
| H A D | bnxt_ethtool.c | 1079 struct bnxt_filter_base *fltr; in bnxt_get_all_fltr_ids_rcu() local 1082 hlist_for_each_entry_rcu(fltr, head, hash) { in bnxt_get_all_fltr_ids_rcu() 1083 if (!fltr->flags || in bnxt_get_all_fltr_ids_rcu() 1084 test_bit(BNXT_FLTR_FW_DELETED, &fltr->state)) in bnxt_get_all_fltr_ids_rcu() 1086 ids[j++] = fltr->sw_id; in bnxt_get_all_fltr_ids_rcu() 1102 struct bnxt_filter_base *fltr; in bnxt_get_one_fltr_rcu() local 1105 hlist_for_each_entry_rcu(fltr, head, hash) { in bnxt_get_one_fltr_rcu() 1106 if (fltr->flags && fltr->sw_id == id) in bnxt_get_one_fltr_rcu() 1107 return fltr; in bnxt_get_one_fltr_rcu() 1137 struct bnxt_ntuple_filter *fltr; in bnxt_grxclsrule() local [all …]
|
| H A D | bnxt.h | 2965 void bnxt_insert_usr_fltr(struct bnxt *bp, struct bnxt_filter_base *fltr); 2966 void bnxt_del_one_usr_fltr(struct bnxt *bp, struct bnxt_filter_base *fltr); 2970 void bnxt_del_l2_filter(struct bnxt *bp, struct bnxt_l2_filter *fltr); 2974 int bnxt_hwrm_l2_filter_free(struct bnxt *bp, struct bnxt_l2_filter *fltr); 2975 int bnxt_hwrm_l2_filter_alloc(struct bnxt *bp, struct bnxt_l2_filter *fltr); 2977 struct bnxt_ntuple_filter *fltr); 2979 struct bnxt_ntuple_filter *fltr); 3043 struct bnxt_ntuple_filter *fltr, u32 idx); 3046 int bnxt_insert_ntp_filter(struct bnxt *bp, struct bnxt_ntuple_filter *fltr, 3048 void bnxt_del_ntp_filter(struct bnxt *bp, struct bnxt_ntuple_filter *fltr);
|
| /linux/tools/testing/selftests/net/ |
| H A D | bpf_offload.py | 469 fltr = {} 471 fltr[flag] = flag in words 475 fltr[name] = words[idx + 1] 478 filters.append(fltr) 790 fltr = ingress[0] variable 791 fail(not fltr["in_hw"], "Filter not offloaded by default") 800 fltr = ingress[0] variable 801 fail(not fltr["in_hw"], "Bytecode not offloaded by default") 879 fltr = ingress[0] variable 880 fail(fltr["skip_h [all...] |
| /linux/drivers/net/ethernet/intel/idpf/ |
| H A D | idpf_ethtool.c | 169 struct idpf_fsteer_fltr *fltr, *parent = NULL, *f; in idpf_add_flow_steer() local 207 fltr = kzalloc_obj(*fltr); in idpf_add_flow_steer() 208 if (!fltr) { in idpf_add_flow_steer() 269 fltr->fs = *fsp; in idpf_add_flow_steer() 272 parent ? list_add(&fltr->list, &parent->list) : in idpf_add_flow_steer() 273 list_add(&fltr->list, &user_config->flow_steer_list); in idpf_add_flow_steer() 280 kfree(fltr); in idpf_add_flow_steer()
|
| /linux/include/linux/qed/ |
| H A D | qed_if.h | 818 void (*arfs_filter_op)(void *dev, void *fltr, u8 fw_rc);
|