| /linux/drivers/net/ethernet/mellanox/mlx5/core/diag/ |
| H A D | fs_tracepoint.h | 181 TP_PROTO(const struct fs_fte *fte, int new_fte), 182 TP_ARGS(fte, new_fte), 184 __field(const struct fs_fte *, fte) 201 __entry->fte = fte; 203 fs_get_obj(__entry->fg, fte->node.parent); 205 __entry->index = fte->index; 206 __entry->action = fte->act_dests.action.action; 208 __entry->flow_tag = fte->act_dests.flow_context.flow_tag; 209 __entry->flow_source = fte->act_dests.flow_context.flow_source; 227 &fte->val, [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/steering/sws/ |
| H A D | fs_dr.c | 255 struct fs_fte *fte) in mlx5_cmd_dr_create_fte() argument 276 return mlx5_fs_cmd_get_fw_cmds()->create_fte(ns, ft, group, fte); in mlx5_cmd_dr_create_fte() 297 match_sz = sizeof(fte->val); in mlx5_cmd_dr_create_fte() 300 if (fte->act_dests.action.action & MLX5_FLOW_CONTEXT_ACTION_FWD_DEST) { in mlx5_cmd_dr_create_fte() 301 list_for_each_entry(dst, &fte->node.children, node.list) { in mlx5_cmd_dr_create_fte() 305 fte->act_dests.action.action &= ~MLX5_FLOW_CONTEXT_ACTION_PACKET_REFORMAT; in mlx5_cmd_dr_create_fte() 315 if (fte->act_dests.action.action & MLX5_FLOW_CONTEXT_ACTION_DECAP) { in mlx5_cmd_dr_create_fte() 331 if (fte->act_dests.action.action & MLX5_FLOW_CONTEXT_ACTION_PACKET_REFORMAT) { in mlx5_cmd_dr_create_fte() 334 pkt_reformat = fte->act_dests.action.pkt_reformat; in mlx5_cmd_dr_create_fte() 351 if (fte->act_dests.action.action & MLX5_FLOW_CONTEXT_ACTION_VLAN_POP) { in mlx5_cmd_dr_create_fte() [all …]
|
| H A D | dr_cmd.c | 733 struct mlx5dr_cmd_fte_info *fte, in mlx5dr_cmd_set_extended_dest() argument 742 if (!(fte->action.action & MLX5_FLOW_CONTEXT_ACTION_FWD_DEST)) in mlx5dr_cmd_set_extended_dest() 744 for (i = 0; i < fte->dests_size; i++) { in mlx5dr_cmd_set_extended_dest() 745 if (fte->dest_arr[i].type == MLX5_FLOW_DESTINATION_TYPE_COUNTER || in mlx5dr_cmd_set_extended_dest() 746 fte->dest_arr[i].type == MLX5_FLOW_DESTINATION_TYPE_NONE) in mlx5dr_cmd_set_extended_dest() 748 if ((fte->dest_arr[i].type == MLX5_FLOW_DESTINATION_TYPE_VPORT || in mlx5dr_cmd_set_extended_dest() 749 fte->dest_arr[i].type == MLX5_FLOW_DESTINATION_TYPE_UPLINK) && in mlx5dr_cmd_set_extended_dest() 750 fte->dest_arr[i].vport.flags & MLX5_FLOW_DEST_VPORT_REFORMAT_ID) in mlx5dr_cmd_set_extended_dest() 775 struct mlx5dr_cmd_fte_info *fte) in mlx5dr_cmd_set_fte() argument 788 if (mlx5dr_cmd_set_extended_dest(dev, fte, &extended_dest)) in mlx5dr_cmd_set_fte() [all …]
|
| H A D | dr_types.h | 1540 struct mlx5dr_cmd_fte_info *fte);
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | fs_core.c | 374 find_flow_rule(struct fs_fte *fte, 600 static void modify_fte(struct fs_fte *fte) in modify_fte() argument 608 fs_get_obj(fg, fte->node.parent); in modify_fte() 610 dev = get_dev(&fte->node); in modify_fte() 613 err = root->cmds->update_fte(root, ft, fg, fte->act_dests.modify_mask, fte); in modify_fte() 617 __func__, fg->id, fte->index); in modify_fte() 618 fte->act_dests.modify_mask = 0; in modify_fte() 624 struct fs_fte *fte; in del_sw_hw_dup_rule() local 627 fs_get_obj(fte, rule->node.parent); in del_sw_hw_dup_rule() 649 struct fs_fte *fte; in del_sw_hw_rule() local [all …]
|
| H A D | fs_cmd.c | 94 struct fs_fte *fte) in mlx5_cmd_stub_create_fte() argument 103 struct fs_fte *fte) in mlx5_cmd_stub_update_fte() argument 110 struct fs_fte *fte) in mlx5_cmd_stub_delete_fte() argument 482 struct fs_fte *fte, bool *extended_dest) in mlx5_set_extended_dest() argument 491 if (!(fte->act_dests.action.action & MLX5_FLOW_CONTEXT_ACTION_FWD_DEST)) in mlx5_set_extended_dest() 494 list_for_each_entry(dst, &fte->node.children, node.list) { in mlx5_set_extended_dest() 521 mlx5_cmd_set_fte_flow_meter(struct fs_fte *fte, void *in_flow_context) in mlx5_cmd_set_fte_flow_meter() argument 530 fte->act_dests.action.exe_aso.object_id); in mlx5_cmd_set_fte_flow_meter() 534 fte->act_dests.action.exe_aso.return_reg_id); in mlx5_cmd_set_fte_flow_meter() 536 fte->act_dests.action.exe_aso.type); in mlx5_cmd_set_fte_flow_meter() [all …]
|
| H A D | fs_cmd.h | 62 struct fs_fte *fte); 68 struct fs_fte *fte); 72 struct fs_fte *fte);
|
| H A D | fs_core.h | 412 #define fs_for_each_dst(pos, fte) \ argument 413 fs_list_for_each_entry(pos, &(fte)->node.children)
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/ |
| H A D | fs_hws.c | 742 struct fs_fte *fte, in mlx5_fs_fte_get_hws_actions() argument 745 struct mlx5_flow_act *fte_action = &fte->act_dests.action; in mlx5_fs_fte_get_hws_actions() 876 list_for_each_entry(dst, &fte->node.children, node.list) { in mlx5_fs_fte_get_hws_actions() 903 if (fte->act_dests.flow_context.flow_tag) { in mlx5_fs_fte_get_hws_actions() 913 (*ractions)[num_actions].tag.value = fte->act_dests.flow_context.flow_tag; in mlx5_fs_fte_get_hws_actions() 949 list_for_each_entry(dst, &fte->node.children, node.list) { in mlx5_fs_fte_get_hws_actions() 1049 fte->fs_hws_rule.num_fs_actions = num_fs_actions; in mlx5_fs_fte_get_hws_actions() 1050 fte->fs_hws_rule.hws_fs_actions = fs_actions; in mlx5_fs_fte_get_hws_actions() 1070 struct fs_fte *fte) in mlx5_cmd_hws_create_fte() argument 1078 return mlx5_fs_cmd_get_fw_cmds()->create_fte(ns, ft, group, fte); in mlx5_cmd_hws_create_fte() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ |
| H A D | psp.c | 141 struct mlx5_flow_handle *fte; in accel_psp_fs_rx_err_add_rule() local 176 fte = mlx5_add_flow_rules(rx_err->ft, spec, &flow_act, dest, 2); in accel_psp_fs_rx_err_add_rule() 177 if (IS_ERR(fte)) { in accel_psp_fs_rx_err_add_rule() 178 err = PTR_ERR(fte); in accel_psp_fs_rx_err_add_rule() 182 rx_err->rule = fte; in accel_psp_fs_rx_err_add_rule() 193 fte = mlx5_add_flow_rules(rx_err->ft, spec, &flow_act, dest, 1); in accel_psp_fs_rx_err_add_rule() 194 if (IS_ERR(fte)) { in accel_psp_fs_rx_err_add_rule() 195 err = PTR_ERR(fte); in accel_psp_fs_rx_err_add_rule() 200 rx_err->auth_fail_rule = fte; in accel_psp_fs_rx_err_add_rule() 211 fte = mlx5_add_flow_rules(rx_err->ft, spec, &flow_act, dest, 1); in accel_psp_fs_rx_err_add_rule() [all …]
|
| H A D | ipsec_fs.c | 1225 struct mlx5_flow_handle *fte; in ipsec_counter_rule_tx() local 1238 fte = mlx5_add_flow_rules(tx->ft.status, spec, &flow_act, &dest, 1); in ipsec_counter_rule_tx() 1239 if (IS_ERR(fte)) { in ipsec_counter_rule_tx() 1240 err = PTR_ERR(fte); in ipsec_counter_rule_tx() 1246 tx->status.rule = fte; in ipsec_counter_rule_tx()
|