| /Linux-v5.4/drivers/net/ethernet/mellanox/mlx5/core/ |
| D | eswitch_offloads_termtbl.c | 11 struct mlx5_flow_act flow_act; member 19 mlx5_eswitch_termtbl_hash(struct mlx5_flow_act *flow_act, in mlx5_eswitch_termtbl_hash() argument 24 hash = jhash_1word(flow_act->action, 0); in mlx5_eswitch_termtbl_hash() 25 hash = jhash((const void *)&flow_act->vlan, in mlx5_eswitch_termtbl_hash() 26 sizeof(flow_act->vlan), hash); in mlx5_eswitch_termtbl_hash() 50 struct mlx5_flow_act *flow_act) in mlx5_eswitch_termtbl_create() argument 75 tt->rule = mlx5_add_flow_rules(tt->termtbl, &spec, flow_act, in mlx5_eswitch_termtbl_create() 94 struct mlx5_flow_act *flow_act, in mlx5_eswitch_termtbl_get_create() argument 104 hash_key = mlx5_eswitch_termtbl_hash(flow_act, dest); in mlx5_eswitch_termtbl_get_create() 107 if (!mlx5_eswitch_termtbl_cmp(&tt->flow_act, &tt->dest, in mlx5_eswitch_termtbl_get_create() [all …]
|
| D | eswitch_offloads.c | 144 struct mlx5_flow_act flow_act = { .flags = FLOW_ACT_NO_APPEND, }; in mlx5_eswitch_add_offloaded_rule() local 153 flow_act.action = attr->action; in mlx5_eswitch_add_offloaded_rule() 156 flow_act.action &= ~(MLX5_FLOW_CONTEXT_ACTION_VLAN_PUSH | in mlx5_eswitch_add_offloaded_rule() 158 else if (flow_act.action & MLX5_FLOW_CONTEXT_ACTION_VLAN_PUSH) { in mlx5_eswitch_add_offloaded_rule() 159 flow_act.vlan[0].ethtype = ntohs(attr->vlan_proto[0]); in mlx5_eswitch_add_offloaded_rule() 160 flow_act.vlan[0].vid = attr->vlan_vid[0]; in mlx5_eswitch_add_offloaded_rule() 161 flow_act.vlan[0].prio = attr->vlan_prio[0]; in mlx5_eswitch_add_offloaded_rule() 162 if (flow_act.action & MLX5_FLOW_CONTEXT_ACTION_VLAN_PUSH_2) { in mlx5_eswitch_add_offloaded_rule() 163 flow_act.vlan[1].ethtype = ntohs(attr->vlan_proto[1]); in mlx5_eswitch_add_offloaded_rule() 164 flow_act.vlan[1].vid = attr->vlan_vid[1]; in mlx5_eswitch_add_offloaded_rule() [all …]
|
| D | rdma.c | 29 struct mlx5_flow_act flow_act = {}; in mlx5_rdma_enable_roce_steering() local 89 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_ALLOW; in mlx5_rdma_enable_roce_steering() 90 flow_rule = mlx5_add_flow_rules(ft, spec, &flow_act, NULL, 0); in mlx5_rdma_enable_roce_steering()
|
| D | fs_core.c | 618 struct mlx5_flow_act *flow_act) in alloc_fte() argument 629 fte->action = *flow_act; in alloc_fte() 1470 const struct mlx5_flow_act *flow_act) in check_conflicting_ftes() argument 1472 if (check_conflicting_actions(flow_act->action, fte->action.action)) { in check_conflicting_ftes() 1492 struct mlx5_flow_act *flow_act, in add_rule_fg() argument 1502 ret = check_conflicting_ftes(fte, &spec->flow_context, flow_act); in add_rule_fg() 1507 fte->action.action |= flow_act->action; in add_rule_fg() 1509 old_action != flow_act->action); in add_rule_fg() 1663 struct mlx5_flow_act *flow_act, in try_add_to_existing_fg() argument 1677 fte = alloc_fte(ft, spec, flow_act); in try_add_to_existing_fg() [all …]
|
| D | eswitch.c | 193 struct mlx5_flow_act flow_act = {0}; in __esw_fdb_set_vport_rule() local 234 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_FWD_DEST; in __esw_fdb_set_vport_rule() 237 &flow_act, &dest, 1); in __esw_fdb_set_vport_rule() 1244 struct mlx5_flow_act flow_act = {0}; in esw_vport_ingress_config() local 1288 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_ALLOW; in esw_vport_ingress_config() 1291 &flow_act, NULL, 0); in esw_vport_ingress_config() 1302 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_DROP; in esw_vport_ingress_config() 1306 flow_act.action |= MLX5_FLOW_CONTEXT_ACTION_COUNT; in esw_vport_ingress_config() 1314 &flow_act, dst, dest_num); in esw_vport_ingress_config() 1337 struct mlx5_flow_act flow_act = {0}; in esw_vport_egress_config() local [all …]
|
| D | en_arfs.c | 177 MLX5_DECLARE_FLOW_ACT(flow_act); in arfs_add_default_rule() 200 &flow_act, in arfs_add_default_rule() 462 MLX5_DECLARE_FLOW_ACT(flow_act); in arfs_add_rule() 537 rule = mlx5_add_flow_rules(ft, spec, &flow_act, &dest, 1); in arfs_add_rule()
|
| D | en_fs.c | 168 MLX5_DECLARE_FLOW_ACT(flow_act); in __mlx5e_add_vlan_rule() 220 *rule_p = mlx5_add_flow_rules(ft, spec, &flow_act, &dest, 1); in __mlx5e_add_vlan_rule() 818 MLX5_DECLARE_FLOW_ACT(flow_act); in mlx5e_generate_ttc_rule() 845 rule = mlx5_add_flow_rules(ft, spec, &flow_act, dest, 1); in mlx5e_generate_ttc_rule() 996 MLX5_DECLARE_FLOW_ACT(flow_act); in mlx5e_generate_inner_ttc_rule() 1019 rule = mlx5_add_flow_rules(ft, spec, &flow_act, dest, 1); in mlx5e_generate_inner_ttc_rule() 1243 MLX5_DECLARE_FLOW_ACT(flow_act); in mlx5e_add_l2_flow_rule() 1278 ai->rule = mlx5_add_flow_rules(ft, spec, &flow_act, &dest, 1); in mlx5e_add_l2_flow_rule()
|
| D | en_fs_ethtool.c | 402 struct mlx5_flow_act flow_act = { .flags = FLOW_ACT_NO_APPEND }; in add_ethtool_flow_rule() local 417 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_DROP; in add_ethtool_flow_rule() 435 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_FWD_DEST; in add_ethtool_flow_rule() 440 rule = mlx5_add_flow_rules(ft, spec, &flow_act, dst, dst ? 1 : 0); in add_ethtool_flow_rule()
|
| D | eswitch.h | 306 struct mlx5_flow_act *flow_act, 314 struct mlx5_flow_act *flow_act,
|
| D | en_tc.c | 907 struct mlx5_flow_act flow_act = { in mlx5e_tc_add_nic_flow() local 949 flow_act.modify_hdr = attr->modify_hdr; in mlx5e_tc_add_nic_flow() 988 &flow_act, dest, dest_ix); in mlx5e_tc_add_nic_flow()
|
| /Linux-v5.4/drivers/infiniband/hw/mlx5/ |
| D | flow.c | 76 struct mlx5_flow_act flow_act = {}; in UVERBS_HANDLER() local 156 flow_act.action |= MLX5_FLOW_CONTEXT_ACTION_COUNT; in UVERBS_HANDLER() 178 ret = parse_flow_flow_action(maction, false, &flow_act); in UVERBS_HANDLER() 197 &flow_act, in UVERBS_HANDLER()
|
| D | main.c | 3084 const struct mlx5_flow_act *flow_act, in is_valid_esp_aes_gcm() argument 3089 (flow_act->action & (MLX5_FLOW_CONTEXT_ACTION_ENCRYPT | in is_valid_esp_aes_gcm() 3092 bool is_drop = flow_act->action & MLX5_FLOW_CONTEXT_ACTION_DROP; in is_valid_esp_aes_gcm() 3109 const struct mlx5_flow_act *flow_act, in is_valid_spec() argument 3113 return is_valid_esp_aes_gcm(mdev, spec, flow_act, egress) != VALID_SPEC_INVALID; in is_valid_spec() 3526 struct mlx5_flow_act flow_act = {}; in _create_flow_rule() local 3558 ib_flow, flow_attr, &flow_act, in _create_flow_rule() 3585 !is_valid_spec(dev->mdev, spec, &flow_act, is_egress)) { in _create_flow_rule() 3590 if (flow_act.action & MLX5_FLOW_CONTEXT_ACTION_COUNT) { in _create_flow_rule() 3593 err = flow_counters_set_data(flow_act.counters, ucmd); in _create_flow_rule() [all …]
|
| D | mlx5_ib.h | 1349 struct mlx5_flow_act *flow_act, u32 counter_id,
|
| /Linux-v5.4/drivers/net/ethernet/netronome/nfp/flower/ |
| D | action.c | 1132 static bool nfp_fl_check_mangle_start(struct flow_action *flow_act, in nfp_fl_check_mangle_start() argument 1138 current_act = flow_act->entries[current_act_idx]; in nfp_fl_check_mangle_start() 1145 prev_act = flow_act->entries[current_act_idx - 1]; in nfp_fl_check_mangle_start() 1150 static bool nfp_fl_check_mangle_end(struct flow_action *flow_act, in nfp_fl_check_mangle_end() argument 1156 current_act = flow_act->entries[current_act_idx]; in nfp_fl_check_mangle_end() 1160 if (current_act_idx == flow_act->num_entries) in nfp_fl_check_mangle_end() 1163 next_act = flow_act->entries[current_act_idx + 1]; in nfp_fl_check_mangle_end()
|
| /Linux-v5.4/include/linux/mlx5/ |
| D | fs.h | 218 struct mlx5_flow_act *flow_act,
|
| /Linux-v5.4/drivers/net/ethernet/mellanox/mlx5/core/fpga/ |
| D | ipsec.c | 639 struct mlx5_flow_act *flow_act, in mlx5_is_fpga_egress_ipsec_rule() argument 658 (flow_act->action & ~(MLX5_FLOW_CONTEXT_ACTION_ENCRYPT | MLX5_FLOW_CONTEXT_ACTION_ALLOW)) || in mlx5_is_fpga_egress_ipsec_rule()
|