/kernel/linux/linux-5.10/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | eswitch_offloads_termtbl.c | 13 struct mlx5_flow_act flow_act; member 21 mlx5_eswitch_termtbl_hash(struct mlx5_flow_act *flow_act, in mlx5_eswitch_termtbl_hash() argument 26 hash = jhash_1word(flow_act->action, 0); in mlx5_eswitch_termtbl_hash() 27 hash = jhash((const void *)&flow_act->vlan, in mlx5_eswitch_termtbl_hash() 28 sizeof(flow_act->vlan), hash); in mlx5_eswitch_termtbl_hash() 33 if (flow_act->pkt_reformat) in mlx5_eswitch_termtbl_hash() 34 hash = jhash(flow_act->pkt_reformat, in mlx5_eswitch_termtbl_hash() 35 sizeof(*flow_act->pkt_reformat), in mlx5_eswitch_termtbl_hash() 66 struct mlx5_flow_act *flow_act) in mlx5_eswitch_termtbl_create() 93 tt->rule = mlx5_add_flow_rules(tt->termtbl, NULL, flow_act, in mlx5_eswitch_termtbl_create() 64 mlx5_eswitch_termtbl_create(struct mlx5_core_dev *dev, struct mlx5_termtbl_handle *tt, struct mlx5_flow_act *flow_act) mlx5_eswitch_termtbl_create() argument 110 mlx5_eswitch_termtbl_get_create(struct mlx5_eswitch *esw, struct mlx5_flow_act *flow_act, struct mlx5_flow_destination *dest, struct mlx5_esw_flow_attr *attr) mlx5_eswitch_termtbl_get_create() argument 213 mlx5_eswitch_termtbl_required(struct mlx5_eswitch *esw, struct mlx5_flow_attr *attr, struct mlx5_flow_act *flow_act, struct mlx5_flow_spec *spec) mlx5_eswitch_termtbl_required() argument 240 mlx5_eswitch_add_termtbl_rule(struct mlx5_eswitch *esw, struct mlx5_flow_table *fdb, struct mlx5_flow_spec *spec, struct mlx5_esw_flow_attr *attr, struct mlx5_flow_act *flow_act, struct mlx5_flow_destination *dest, int num_dest) mlx5_eswitch_add_termtbl_rule() argument [all...] |
H A D | eswitch_offloads.c | 304 struct mlx5_flow_act flow_act = { .flags = FLOW_ACT_NO_APPEND, }; in mlx5_eswitch_add_offloaded_rule() local 316 flow_act.action = attr->action; in mlx5_eswitch_add_offloaded_rule() 319 flow_act.action &= ~(MLX5_FLOW_CONTEXT_ACTION_VLAN_PUSH | in mlx5_eswitch_add_offloaded_rule() 321 else if (flow_act.action & MLX5_FLOW_CONTEXT_ACTION_VLAN_PUSH) { in mlx5_eswitch_add_offloaded_rule() 322 flow_act.vlan[0].ethtype = ntohs(esw_attr->vlan_proto[0]); in mlx5_eswitch_add_offloaded_rule() 323 flow_act.vlan[0].vid = esw_attr->vlan_vid[0]; in mlx5_eswitch_add_offloaded_rule() 324 flow_act.vlan[0].prio = esw_attr->vlan_prio[0]; in mlx5_eswitch_add_offloaded_rule() 325 if (flow_act.action & MLX5_FLOW_CONTEXT_ACTION_VLAN_PUSH_2) { in mlx5_eswitch_add_offloaded_rule() 326 flow_act.vlan[1].ethtype = ntohs(esw_attr->vlan_proto[1]); in mlx5_eswitch_add_offloaded_rule() 327 flow_act in mlx5_eswitch_add_offloaded_rule() 449 struct mlx5_flow_act flow_act = { .flags = FLOW_ACT_NO_APPEND, }; mlx5_eswitch_add_fwd_rule() local 772 struct mlx5_flow_act flow_act = {0}; mlx5_eswitch_add_send_to_vport_rule() local 924 struct mlx5_flow_act flow_act = {0}; esw_add_fdb_peer_miss_rules() local 1032 struct mlx5_flow_act flow_act = {0}; esw_add_fdb_miss_rule() local 1093 struct mlx5_flow_act flow_act = { .flags = FLOW_ACT_NO_APPEND, }; esw_add_restore_rule() local 1551 struct mlx5_flow_act flow_act = {0}; mlx5_eswitch_create_vport_rx_rule() local [all...] |
H A 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()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | eswitch_offloads_termtbl.c | 13 struct mlx5_flow_act flow_act; member 21 mlx5_eswitch_termtbl_hash(struct mlx5_flow_act *flow_act, in mlx5_eswitch_termtbl_hash() argument 26 hash = jhash_1word(flow_act->action, 0); in mlx5_eswitch_termtbl_hash() 27 hash = jhash((const void *)&flow_act->vlan, in mlx5_eswitch_termtbl_hash() 28 sizeof(flow_act->vlan), hash); in mlx5_eswitch_termtbl_hash() 33 if (flow_act->pkt_reformat) in mlx5_eswitch_termtbl_hash() 34 hash = jhash(flow_act->pkt_reformat, in mlx5_eswitch_termtbl_hash() 35 sizeof(*flow_act->pkt_reformat), in mlx5_eswitch_termtbl_hash() 66 struct mlx5_flow_act *flow_act) in mlx5_eswitch_termtbl_create() 94 tt->rule = mlx5_add_flow_rules(tt->termtbl, NULL, flow_act, in mlx5_eswitch_termtbl_create() 64 mlx5_eswitch_termtbl_create(struct mlx5_core_dev *dev, struct mlx5_termtbl_handle *tt, struct mlx5_flow_act *flow_act) mlx5_eswitch_termtbl_create() argument 112 mlx5_eswitch_termtbl_get_create(struct mlx5_eswitch *esw, struct mlx5_flow_act *flow_act, struct mlx5_flow_destination *dest, struct mlx5_esw_flow_attr *attr) mlx5_eswitch_termtbl_get_create() argument 214 mlx5_eswitch_termtbl_required(struct mlx5_eswitch *esw, struct mlx5_flow_attr *attr, struct mlx5_flow_act *flow_act, struct mlx5_flow_spec *spec) mlx5_eswitch_termtbl_required() argument 244 mlx5_eswitch_add_termtbl_rule(struct mlx5_eswitch *esw, struct mlx5_flow_table *fdb, struct mlx5_flow_spec *spec, struct mlx5_esw_flow_attr *attr, struct mlx5_flow_act *flow_act, struct mlx5_flow_destination *dest, int num_dest) mlx5_eswitch_add_termtbl_rule() argument [all...] |
H A D | eswitch_offloads.c | 214 struct mlx5_flow_act *flow_act, in esw_setup_sampler_dest() 218 flow_act->flags |= FLOW_ACT_IGNORE_FLOW_LEVEL; in esw_setup_sampler_dest() 227 struct mlx5_flow_act *flow_act, in esw_setup_ft_dest() 232 flow_act->flags |= FLOW_ACT_IGNORE_FLOW_LEVEL; in esw_setup_ft_dest() 242 esw_setup_accept_dest(struct mlx5_flow_destination *dest, struct mlx5_flow_act *flow_act, in esw_setup_accept_dest() argument 246 flow_act->flags |= FLOW_ACT_IGNORE_FLOW_LEVEL; in esw_setup_accept_dest() 252 esw_setup_slow_path_dest(struct mlx5_flow_destination *dest, struct mlx5_flow_act *flow_act, in esw_setup_slow_path_dest() argument 256 flow_act->flags |= FLOW_ACT_IGNORE_FLOW_LEVEL; in esw_setup_slow_path_dest() 263 struct mlx5_flow_act *flow_act, in esw_setup_chain_dest() 270 flow_act in esw_setup_chain_dest() 213 esw_setup_sampler_dest(struct mlx5_flow_destination *dest, struct mlx5_flow_act *flow_act, u32 sampler_id, int i) esw_setup_sampler_dest() argument 226 esw_setup_ft_dest(struct mlx5_flow_destination *dest, struct mlx5_flow_act *flow_act, struct mlx5_eswitch *esw, struct mlx5_flow_attr *attr, int i) esw_setup_ft_dest() argument 262 esw_setup_chain_dest(struct mlx5_flow_destination *dest, struct mlx5_flow_act *flow_act, struct mlx5_fs_chains *chains, u32 chain, u32 prio, u32 level, int i) esw_setup_chain_dest() argument 307 esw_setup_chain_src_port_rewrite(struct mlx5_flow_destination *dest, struct mlx5_flow_act *flow_act, struct mlx5_eswitch *esw, struct mlx5_fs_chains *chains, struct mlx5_flow_attr *attr, int *i) esw_setup_chain_src_port_rewrite() argument 373 esw_setup_indir_table(struct mlx5_flow_destination *dest, struct mlx5_flow_act *flow_act, struct mlx5_eswitch *esw, struct mlx5_flow_attr *attr, int *i) esw_setup_indir_table() argument 466 esw_setup_dest_fwd_vport(struct mlx5_flow_destination *dest, struct mlx5_flow_act *flow_act, struct mlx5_eswitch *esw, struct mlx5_esw_flow_attr *esw_attr, int attr_idx, int dest_idx, bool pkt_reformat) esw_setup_dest_fwd_vport() argument 491 esw_setup_dest_fwd_ipsec(struct mlx5_flow_destination *dest, struct mlx5_flow_act *flow_act, struct mlx5_eswitch *esw, struct mlx5_esw_flow_attr *esw_attr, int attr_idx, int dest_idx, bool pkt_reformat) esw_setup_dest_fwd_ipsec() argument 505 esw_setup_vport_dest(struct mlx5_flow_destination *dest, struct mlx5_flow_act *flow_act, struct mlx5_eswitch *esw, struct mlx5_esw_flow_attr *esw_attr, int attr_idx, int dest_idx, bool pkt_reformat) esw_setup_vport_dest() argument 518 esw_setup_vport_dests(struct mlx5_flow_destination *dest, struct mlx5_flow_act *flow_act, struct mlx5_eswitch *esw, struct mlx5_esw_flow_attr *esw_attr, int i) esw_setup_vport_dests() argument 565 esw_setup_dests(struct mlx5_flow_destination *dest, struct mlx5_flow_act *flow_act, struct mlx5_eswitch *esw, struct mlx5_flow_attr *attr, struct mlx5_flow_spec *spec, int *i) esw_setup_dests() argument 636 esw_setup_meter(struct mlx5_flow_attr *attr, struct mlx5_flow_act *flow_act) esw_setup_meter() argument 654 struct mlx5_flow_act flow_act = { .flags = FLOW_ACT_NO_APPEND, }; mlx5_eswitch_add_offloaded_rule() local 791 struct mlx5_flow_act flow_act = { .flags = FLOW_ACT_NO_APPEND, }; mlx5_eswitch_add_fwd_rule() local 933 struct mlx5_flow_act flow_act = {0}; mlx5_eswitch_add_send_to_vport_rule() local 1033 struct mlx5_flow_act flow_act = {0}; mlx5_eswitch_add_send_to_vport_meta_rule() local 1177 struct mlx5_flow_act flow_act = {0}; esw_add_fdb_peer_miss_rules() local 1346 struct mlx5_flow_act flow_act = {0}; esw_add_fdb_miss_rule() local 1407 struct mlx5_flow_act flow_act = { .flags = FLOW_ACT_NO_APPEND, }; esw_add_restore_rule() local 2132 struct mlx5_flow_act flow_act = {0}; mlx5_eswitch_create_vport_rx_rule() local 2159 struct mlx5_flow_act flow_act = {}; esw_create_vport_rx_drop_rule() local 2659 struct mlx5_flow_act flow_act = {}; __esw_set_master_egress_rule() local [all...] |
H A D | rdma.c | 29 struct mlx5_flow_act flow_act = {}; in mlx5_rdma_enable_roce_steering() local 77 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_ALLOW; in mlx5_rdma_enable_roce_steering() 78 flow_rule = mlx5_add_flow_rules(ft, spec, &flow_act, NULL, 0); in mlx5_rdma_enable_roce_steering()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/mellanox/mlx5/core/lib/ |
H A D | macsec_fs.c | 397 struct mlx5_flow_act flow_act = {}; in macsec_fs_tx_create() local 451 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_ALLOW; in macsec_fs_tx_create() 453 rule = mlx5_add_flow_rules(ft_crypto->t, spec, &flow_act, NULL, 0); in macsec_fs_tx_create() 462 memset(&flow_act, 0, sizeof(flow_act)); in macsec_fs_tx_create() 463 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_ALLOW; in macsec_fs_tx_create() 464 rule = mlx5_add_flow_rules(ft_crypto->t, NULL, &flow_act, NULL, 0); in macsec_fs_tx_create() 498 memset(&flow_act, 0, sizeof(flow_act)); in macsec_fs_tx_create() 501 flow_act in macsec_fs_tx_create() 577 macsec_fs_tx_setup_fte(struct mlx5_macsec_fs *macsec_fs, struct mlx5_flow_spec *spec, struct mlx5_flow_act *flow_act, u32 macsec_obj_id, u32 *fs_id) macsec_fs_tx_setup_fte() argument 812 struct mlx5_flow_act flow_act = {}; macsec_fs_tx_add_rule() local 1135 macsec_fs_rx_create_check_decap_rule(struct mlx5_macsec_fs *macsec_fs, struct mlx5_flow_destination *dest, struct mlx5_flow_act *flow_act, struct mlx5_flow_spec *spec, int reformat_param_size) macsec_fs_rx_create_check_decap_rule() argument 1220 struct mlx5_flow_act flow_act = {}; macsec_fs_rx_roce_miss_create() local 1506 struct mlx5_flow_act flow_act = {}; macsec_fs_rx_create() local 1680 macsec_fs_rx_setup_fte(struct mlx5_flow_spec *spec, struct mlx5_flow_act *flow_act, struct mlx5_macsec_rule_attrs *attrs, bool sci_present) macsec_fs_rx_setup_fte() argument 1741 struct mlx5_flow_act flow_act = {}; macsec_fs_rx_add_rule() local 2134 struct mlx5_flow_act flow_act = {}; mlx5_macsec_fs_add_roce_rule_rx() local 2203 struct mlx5_flow_act flow_act = {}; mlx5_macsec_fs_add_roce_rule_tx() local [all...] |
H A D | ipsec_fs_roce.c | 52 MLX5_DECLARE_FLOW_ACT(flow_act); in ipsec_fs_roce_rx_rule_setup() 63 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_FWD_DEST; in ipsec_fs_roce_rx_rule_setup() 66 rule = mlx5_add_flow_rules(roce->ft, spec, &flow_act, &dst, 1); in ipsec_fs_roce_rx_rule_setup() 77 rule = mlx5_add_flow_rules(roce->ft, spec, &flow_act, default_dst, 1); in ipsec_fs_roce_rx_rule_setup() 102 MLX5_DECLARE_FLOW_ACT(flow_act); in ipsec_fs_roce_tx_rule_setup() 106 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_FWD_DEST; in ipsec_fs_roce_tx_rule_setup() 109 rule = mlx5_add_flow_rules(roce->ft, NULL, &flow_act, &dst, in ipsec_fs_roce_tx_rule_setup()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ |
H A D | ingress_ofld.c | 20 struct mlx5_flow_act flow_act = {}; in esw_acl_ingress_prio_tag_create() local 37 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_VLAN_PUSH | in esw_acl_ingress_prio_tag_create() 39 flow_act.vlan[0].ethtype = ETH_P_8021Q; in esw_acl_ingress_prio_tag_create() 40 flow_act.vlan[0].vid = 0; in esw_acl_ingress_prio_tag_create() 41 flow_act.vlan[0].prio = 0; in esw_acl_ingress_prio_tag_create() 44 flow_act.action |= MLX5_FLOW_CONTEXT_ACTION_MOD_HDR; in esw_acl_ingress_prio_tag_create() 45 flow_act.modify_hdr = vport->ingress.offloads.modify_metadata; in esw_acl_ingress_prio_tag_create() 49 &flow_act, NULL, 0); in esw_acl_ingress_prio_tag_create() 66 struct mlx5_flow_act flow_act = {}; in esw_acl_ingress_mod_metadata_create() local 93 flow_act in esw_acl_ingress_mod_metadata_create() 124 struct mlx5_flow_act flow_act = {}; esw_acl_ingress_src_port_drop_create() local [all...] |
H A D | ingress_lgcy.c | 145 struct mlx5_flow_act flow_act = {}; in esw_acl_ingress_lgcy_setup() local 220 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_ALLOW; in esw_acl_ingress_lgcy_setup() 222 flow_act.action |= MLX5_FLOW_CONTEXT_ACTION_VLAN_PUSH; in esw_acl_ingress_lgcy_setup() 223 flow_act.vlan[0].prio = vport->info.qos; in esw_acl_ingress_lgcy_setup() 224 flow_act.vlan[0].vid = vport->info.vlan; in esw_acl_ingress_lgcy_setup() 225 flow_act.vlan[0].ethtype = ETH_P_8021Q; in esw_acl_ingress_lgcy_setup() 244 &flow_act, NULL, 0); in esw_acl_ingress_lgcy_setup() 257 memset(&flow_act, 0, sizeof(flow_act)); in esw_acl_ingress_lgcy_setup() 258 flow_act in esw_acl_ingress_lgcy_setup() [all...] |
H A D | egress_lgcy.c | 74 struct mlx5_flow_act flow_act = {}; in esw_acl_egress_lgcy_setup() local 132 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_DROP; in esw_acl_egress_lgcy_setup() 136 flow_act.action |= MLX5_FLOW_CONTEXT_ACTION_COUNT; in esw_acl_egress_lgcy_setup() 144 &flow_act, dst, dest_num); in esw_acl_egress_lgcy_setup()
|
H A D | helper.c | 54 struct mlx5_flow_act flow_act = {}; in esw_egress_acl_vlan_create() local 71 flow_act.action = flow_action; in esw_egress_acl_vlan_create() 74 &flow_act, fwd_dest, 0); in esw_egress_acl_vlan_create()
|
/kernel/linux/linux-5.10/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ |
H A D | ingress_ofld.c | 20 struct mlx5_flow_act flow_act = {}; in esw_acl_ingress_prio_tag_create() local 37 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_VLAN_PUSH | in esw_acl_ingress_prio_tag_create() 39 flow_act.vlan[0].ethtype = ETH_P_8021Q; in esw_acl_ingress_prio_tag_create() 40 flow_act.vlan[0].vid = 0; in esw_acl_ingress_prio_tag_create() 41 flow_act.vlan[0].prio = 0; in esw_acl_ingress_prio_tag_create() 44 flow_act.action |= MLX5_FLOW_CONTEXT_ACTION_MOD_HDR; in esw_acl_ingress_prio_tag_create() 45 flow_act.modify_hdr = vport->ingress.offloads.modify_metadata; in esw_acl_ingress_prio_tag_create() 49 &flow_act, NULL, 0); in esw_acl_ingress_prio_tag_create() 66 struct mlx5_flow_act flow_act = {}; in esw_acl_ingress_mod_metadata_create() local 93 flow_act in esw_acl_ingress_mod_metadata_create() [all...] |
H A D | ingress_lgcy.c | 144 struct mlx5_flow_act flow_act = {}; in esw_acl_ingress_lgcy_setup() local 223 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_ALLOW; in esw_acl_ingress_lgcy_setup() 225 &flow_act, NULL, 0); in esw_acl_ingress_lgcy_setup() 235 memset(&flow_act, 0, sizeof(flow_act)); in esw_acl_ingress_lgcy_setup() 236 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_DROP; in esw_acl_ingress_lgcy_setup() 239 flow_act.action |= MLX5_FLOW_CONTEXT_ACTION_COUNT; in esw_acl_ingress_lgcy_setup() 247 &flow_act, dst, dest_num); in esw_acl_ingress_lgcy_setup()
|
H A D | egress_lgcy.c | 73 struct mlx5_flow_act flow_act = {}; in esw_acl_egress_lgcy_setup() local 127 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_DROP; in esw_acl_egress_lgcy_setup() 131 flow_act.action |= MLX5_FLOW_CONTEXT_ACTION_COUNT; in esw_acl_egress_lgcy_setup() 139 &flow_act, dst, dest_num); in esw_acl_egress_lgcy_setup()
|
H A D | helper.c | 50 struct mlx5_flow_act flow_act = {}; in esw_egress_acl_vlan_create() local 67 flow_act.action = flow_action; in esw_egress_acl_vlan_create() 70 &flow_act, fwd_dest, 0); in esw_egress_acl_vlan_create()
|
/kernel/linux/linux-5.10/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ |
H A D | ipsec_fs.c | 57 struct mlx5_flow_act flow_act = {}; in rx_err_add_rule() local 86 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_MOD_HDR | in rx_err_add_rule() 88 flow_act.modify_hdr = modify_hdr; in rx_err_add_rule() 89 fte = mlx5_add_flow_rules(rx_err->ft, spec, &flow_act, in rx_err_add_rule() 189 MLX5_DECLARE_FLOW_ACT(flow_act); in rx_fs_create() 228 miss_rule = mlx5_add_flow_rules(ft, spec, &flow_act, &fs_prot->default_dest, 1); in rx_fs_create() 406 struct mlx5_flow_act *flow_act) in setup_fte_common() 455 flow_act->ipsec_obj_id = ipsec_obj_id; in setup_fte_common() 456 flow_act->flags |= FLOW_ACT_NO_APPEND; in setup_fte_common() 469 struct mlx5_flow_act flow_act in rx_add_rule() local 403 setup_fte_common(struct mlx5_accel_esp_xfrm_attrs *attrs, u32 ipsec_obj_id, struct mlx5_flow_spec *spec, struct mlx5_flow_act *flow_act) setup_fte_common() argument 542 struct mlx5_flow_act flow_act = {}; tx_add_rule() local [all...] |
/kernel/linux/linux-6.6/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ |
H A D | ipsec_fs.c | 159 struct mlx5_flow_act flow_act = {}; in ipsec_rx_status_drop_create() local 192 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_DROP | MLX5_FLOW_CONTEXT_ACTION_COUNT; in ipsec_rx_status_drop_create() 197 rule = mlx5_add_flow_rules(ft, spec, &flow_act, &dest, 1); in ipsec_rx_status_drop_create() 227 struct mlx5_flow_act flow_act = {}; in ipsec_rx_status_pass_create() local 243 flow_act.flags = FLOW_ACT_NO_APPEND; in ipsec_rx_status_pass_create() 244 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_FWD_DEST | in ipsec_rx_status_pass_create() 246 rule = mlx5_add_flow_rules(rx->ft.status, spec, &flow_act, dest, 2); in ipsec_rx_status_pass_create() 297 MLX5_DECLARE_FLOW_ACT(flow_act); in ipsec_miss_create() 321 miss->rule = mlx5_add_flow_rules(ft, spec, &flow_act, dest, 1); in ipsec_miss_create() 626 struct mlx5_flow_act flow_act in ipsec_counter_rule_tx() local 1078 setup_modify_header(struct mlx5e_ipsec *ipsec, int type, u32 val, u8 dir, struct mlx5_flow_act *flow_act) setup_modify_header() argument 1287 setup_pkt_reformat(struct mlx5e_ipsec *ipsec, struct mlx5_accel_esp_xfrm_attrs *attrs, struct mlx5_flow_act *flow_act) setup_pkt_reformat() argument 1329 struct mlx5_flow_act flow_act = {}; rx_add_rule() local 1429 struct mlx5_flow_act flow_act = {}; tx_add_rule() local 1522 struct mlx5_flow_act flow_act = {}; tx_add_policy() local 1606 struct mlx5_flow_act flow_act = {}; rx_add_policy() local [all...] |
/kernel/linux/linux-6.6/drivers/net/ethernet/mellanox/mlx5/core/esw/ |
H A D | indir_table.c | 104 struct mlx5_flow_act flow_act = {}; in mlx5_esw_indir_table_rule_get() local 130 flow_act.modify_hdr = mlx5_modify_header_alloc(esw->dev, MLX5_FLOW_NAMESPACE_FDB, in mlx5_esw_indir_table_rule_get() 132 if (IS_ERR(flow_act.modify_hdr)) { in mlx5_esw_indir_table_rule_get() 133 err = PTR_ERR(flow_act.modify_hdr); in mlx5_esw_indir_table_rule_get() 137 flow_act.action = MLX5_FLOW_CONTEXT_ACTION_FWD_DEST | MLX5_FLOW_CONTEXT_ACTION_MOD_HDR; in mlx5_esw_indir_table_rule_get() 138 flow_act.flags = FLOW_ACT_IGNORE_FLOW_LEVEL | FLOW_ACT_NO_APPEND; in mlx5_esw_indir_table_rule_get() 139 flow_act.fg = e->recirc_grp; in mlx5_esw_indir_table_rule_get() 146 handle = mlx5_add_flow_rules(e->ft, NULL, &flow_act, &dest, 1); in mlx5_esw_indir_table_rule_get() 154 rule->mh = flow_act.modify_hdr; in mlx5_esw_indir_table_rule_get() 162 mlx5_modify_header_dealloc(esw->dev, flow_act in mlx5_esw_indir_table_rule_get() 214 struct mlx5_flow_act flow_act = {}; mlx5_create_indir_fwd_group() local [all...] |
H A D | ipsec_fs.h | 16 struct mlx5_flow_act *flow_act); 34 struct mlx5_flow_act *flow_act) in mlx5_esw_ipsec_rx_setup_modify_header() 33 mlx5_esw_ipsec_rx_setup_modify_header(struct mlx5e_ipsec_sa_entry *sa_entry, struct mlx5_flow_act *flow_act) mlx5_esw_ipsec_rx_setup_modify_header() argument
|
H A D | ipsec_fs.c | 44 struct mlx5_flow_act *flow_act) in mlx5_esw_ipsec_rx_setup_modify_header() 78 flow_act->modify_hdr = modify_hdr; in mlx5_esw_ipsec_rx_setup_modify_header() 79 flow_act->action |= MLX5_FLOW_CONTEXT_ACTION_MOD_HDR; in mlx5_esw_ipsec_rx_setup_modify_header() 43 mlx5_esw_ipsec_rx_setup_modify_header(struct mlx5e_ipsec_sa_entry *sa_entry, struct mlx5_flow_act *flow_act) mlx5_esw_ipsec_rx_setup_modify_header() argument
|
H A D | bridge_mcast.c | 56 struct mlx5_flow_act flow_act = { in mlx5_esw_bridge_mdb_flow_create() local 111 handle = mlx5_add_flow_rules(bridge->egress_ft, rule_spec, &flow_act, dests, num_dests); in mlx5_esw_bridge_mdb_flow_create() 512 struct mlx5_flow_act flow_act = { in mlx5_esw_bridge_mcast_flow_with_esw_create() local 530 handle = mlx5_add_flow_rules(port->mcast.ft, rule_spec, &flow_act, NULL, 0); in mlx5_esw_bridge_mcast_flow_with_esw_create() 575 struct mlx5_flow_act flow_act = { in mlx5_esw_bridge_mcast_vlan_flow_create() local 594 flow_act.action |= MLX5_FLOW_CONTEXT_ACTION_PACKET_REFORMAT; in mlx5_esw_bridge_mcast_vlan_flow_create() 595 flow_act.pkt_reformat = vlan->pkt_reformat_pop; in mlx5_esw_bridge_mcast_vlan_flow_create() 615 handle = mlx5_add_flow_rules(port->mcast.ft, rule_spec, &flow_act, &dest, 1); in mlx5_esw_bridge_mcast_vlan_flow_create() 647 struct mlx5_flow_act flow_act = { in mlx5_esw_bridge_mcast_fwd_flow_create() local 668 handle = mlx5_add_flow_rules(port->mcast.ft, rule_spec, &flow_act, in mlx5_esw_bridge_mcast_fwd_flow_create() 886 struct mlx5_flow_act flow_act = { mlx5_esw_bridge_ingress_igmp_fh_create() local 918 struct mlx5_flow_act flow_act = { mlx5_esw_bridge_ingress_mld_fh_create() local [all...] |
/kernel/linux/linux-6.6/drivers/infiniband/hw/mlx5/ |
H A D | fs.c | 876 struct mlx5_flow_act flow_act = {}; in mlx5_ib_fs_add_op_fc() local 948 flow_act.action = in mlx5_ib_fs_add_op_fc() 953 &flow_act, &dst, 1); in mlx5_ib_fs_add_op_fc() 1046 struct mlx5_flow_act flow_act = {}; in _create_flow_rule() local 1074 ib_flow, flow_attr, &flow_act, in _create_flow_rule() 1083 if (dst && !(flow_act.action & MLX5_FLOW_CONTEXT_ACTION_DROP)) { in _create_flow_rule() 1105 if (flow_act.action & MLX5_FLOW_CONTEXT_ACTION_COUNT) { in _create_flow_rule() 1108 err = mlx5_ib_flow_counters_set_data(flow_act.counters, ucmd); in _create_flow_rule() 1112 mcounters = to_mcounters(flow_act.counters); in _create_flow_rule() 1113 handler->ibcounters = flow_act in _create_flow_rule() 1514 _create_raw_flow_rule(struct mlx5_ib_dev *dev, struct mlx5_ib_flow_prio *ft_prio, struct mlx5_flow_destination *dst, struct mlx5_ib_flow_matcher *fs_matcher, struct mlx5_flow_context *flow_context, struct mlx5_flow_act *flow_act, void *cmd_in, int inlen, int dst_num) _create_raw_flow_rule() argument 1603 raw_fs_rule_add( struct mlx5_ib_dev *dev, struct mlx5_ib_flow_matcher *fs_matcher, struct mlx5_flow_context *flow_context, struct mlx5_flow_act *flow_act, u32 counter_id, void *cmd_in, int inlen, int dest_id, int dest_type) raw_fs_rule_add() argument 1913 struct mlx5_flow_act flow_act = {}; MLX5_IB_METHOD_CREATE_FLOW() local 2145 struct mlx5_flow_act flow_act = {}; steering_anchor_create_rule_drop() local 2176 struct mlx5_flow_act flow_act = {}; steering_anchor_create_rule_goto_table() local [all...] |
/kernel/linux/linux-5.10/drivers/infiniband/hw/mlx5/ |
H A D | fs.c | 597 const struct mlx5_flow_act *flow_act, in is_valid_esp_aes_gcm() 602 (flow_act->action & (MLX5_FLOW_CONTEXT_ACTION_ENCRYPT | in is_valid_esp_aes_gcm() 605 bool is_drop = flow_act->action & MLX5_FLOW_CONTEXT_ACTION_DROP; in is_valid_esp_aes_gcm() 622 const struct mlx5_flow_act *flow_act, in is_valid_spec() 626 return is_valid_esp_aes_gcm(mdev, spec, flow_act, egress) != VALID_SPEC_INVALID; in is_valid_spec() 911 struct mlx5_flow_act flow_act = {}; in _create_flow_rule() local 939 ib_flow, flow_attr, &flow_act, in _create_flow_rule() 948 if (dst && !(flow_act.action & MLX5_FLOW_CONTEXT_ACTION_DROP)) { in _create_flow_rule() 971 !is_valid_spec(dev->mdev, spec, &flow_act, is_egress)) { in _create_flow_rule() 976 if (flow_act in _create_flow_rule() 595 is_valid_esp_aes_gcm(struct mlx5_core_dev *mdev, const struct mlx5_flow_spec *spec, const struct mlx5_flow_act *flow_act, bool egress) is_valid_esp_aes_gcm() argument 620 is_valid_spec(struct mlx5_core_dev *mdev, const struct mlx5_flow_spec *spec, const struct mlx5_flow_act *flow_act, bool egress) is_valid_spec() argument 1386 _create_raw_flow_rule(struct mlx5_ib_dev *dev, struct mlx5_ib_flow_prio *ft_prio, struct mlx5_flow_destination *dst, struct mlx5_ib_flow_matcher *fs_matcher, struct mlx5_flow_context *flow_context, struct mlx5_flow_act *flow_act, void *cmd_in, int inlen, int dst_num) _create_raw_flow_rule() argument 1475 raw_fs_rule_add( struct mlx5_ib_dev *dev, struct mlx5_ib_flow_matcher *fs_matcher, struct mlx5_flow_context *flow_context, struct mlx5_flow_act *flow_act, u32 counter_id, void *cmd_in, int inlen, int dest_id, int dest_type) raw_fs_rule_add() argument 1934 struct mlx5_flow_act flow_act = {}; MLX5_IB_METHOD_CREATE_FLOW() local [all...] |
/kernel/linux/linux-6.6/drivers/net/ethernet/mellanox/mlx5/core/en/ |
H A D | fs_tt_redirect.c | 85 MLX5_DECLARE_FLOW_ACT(flow_act); in mlx5e_fs_tt_redirect_udp_add_rule() 103 rule = mlx5_add_flow_rules(ft, spec, &flow_act, &dest, 1); in mlx5e_fs_tt_redirect_udp_add_rule() 120 MLX5_DECLARE_FLOW_ACT(flow_act); in fs_udp_add_default_rule() 127 rule = mlx5_add_flow_rules(fs_udp_t->t, NULL, &flow_act, &dest, 1); in fs_udp_add_default_rule() 370 MLX5_DECLARE_FLOW_ACT(flow_act); in mlx5e_fs_tt_redirect_any_add_rule() 385 rule = mlx5_add_flow_rules(ft, spec, &flow_act, &dest, 1); in mlx5e_fs_tt_redirect_any_add_rule() 402 MLX5_DECLARE_FLOW_ACT(flow_act); in fs_any_add_default_rule() 408 rule = mlx5_add_flow_rules(fs_any_t->t, NULL, &flow_act, &dest, 1); in fs_any_add_default_rule()
|