| /linux-6.15/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | eswitch_offloads_termtbl.c | 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() 56 if (flow_act1->pkt_reformat && flow_act2->pkt_reformat) in mlx5_eswitch_termtbl_cmp() 57 return memcmp(flow_act1->pkt_reformat, flow_act2->pkt_reformat, in mlx5_eswitch_termtbl_cmp() 58 sizeof(*flow_act1->pkt_reformat)); in mlx5_eswitch_termtbl_cmp() 60 return !(flow_act1->pkt_reformat == flow_act2->pkt_reformat); in mlx5_eswitch_termtbl_cmp() 270 term_tbl_act.pkt_reformat = attr->dests[num_vport_dests].pkt_reformat; in mlx5_eswitch_add_termtbl_rule() 273 term_tbl_act.pkt_reformat = NULL; in mlx5_eswitch_add_termtbl_rule() 298 flow_act->pkt_reformat = NULL; in mlx5_eswitch_add_termtbl_rule()
|
| H A D | fs_cmd.c | 118 struct mlx5_pkt_reformat *pkt_reformat) in mlx5_cmd_stub_packet_reformat_alloc() argument 124 struct mlx5_pkt_reformat *pkt_reformat) in mlx5_cmd_stub_packet_reformat_dealloc() argument 583 struct mlx5_pkt_reformat *pkt_reformat = fte->act_dests.action.pkt_reformat; in mlx5_cmd_set_fte() local 590 pkt_reformat->reformat_type); in mlx5_cmd_set_fte() 595 reformat_id = fte->act_dests.action.pkt_reformat->id; in mlx5_cmd_set_fte() 674 dst->dest_attr.vport.pkt_reformat) { in mlx5_cmd_set_fte() 681 dst->dest_attr.vport.pkt_reformat->id); in mlx5_cmd_set_fte() 875 struct mlx5_pkt_reformat *pkt_reformat) in mlx5_cmd_packet_reformat_alloc() argument 927 pkt_reformat->owner = MLX5_FLOW_RESOURCE_OWNER_FW; in mlx5_cmd_packet_reformat_alloc() 934 struct mlx5_pkt_reformat *pkt_reformat) in mlx5_cmd_packet_reformat_dealloc() argument [all …]
|
| H A D | fs_cmd.h | 82 struct mlx5_pkt_reformat *pkt_reformat); 85 struct mlx5_pkt_reformat *pkt_reformat);
|
| H A D | en_rep.h | 188 struct mlx5_pkt_reformat *pkt_reformat; member 210 struct mlx5_pkt_reformat *pkt_reformat; member
|
| H A D | fs_core.c | 1855 d2->vport.pkt_reformat) : true)) || in mlx5_flow_dests_cmp() 1921 act1->pkt_reformat != act2->pkt_reformat) in check_conflicting_actions() 4062 struct mlx5_pkt_reformat *pkt_reformat; in mlx5_packet_reformat_alloc() local 4070 pkt_reformat = kzalloc(sizeof(*pkt_reformat), GFP_KERNEL); in mlx5_packet_reformat_alloc() 4071 if (!pkt_reformat) in mlx5_packet_reformat_alloc() 4074 pkt_reformat->ns_type = ns_type; in mlx5_packet_reformat_alloc() 4075 pkt_reformat->reformat_type = params->type; in mlx5_packet_reformat_alloc() 4077 pkt_reformat); in mlx5_packet_reformat_alloc() 4079 kfree(pkt_reformat); in mlx5_packet_reformat_alloc() 4083 return pkt_reformat; in mlx5_packet_reformat_alloc() [all …]
|
| H A D | eswitch_offloads.c | 333 flow_act->pkt_reformat = esw_attr->dests[esw_attr->split_count].pkt_reformat; in esw_setup_chain_src_port_rewrite() 469 int attr_idx, int dest_idx, bool pkt_reformat) in esw_setup_dest_fwd_vport() argument 482 if (pkt_reformat) { in esw_setup_dest_fwd_vport() 484 flow_act->pkt_reformat = esw_attr->dests[attr_idx].pkt_reformat; in esw_setup_dest_fwd_vport() 487 dest[dest_idx].vport.pkt_reformat = esw_attr->dests[attr_idx].pkt_reformat; in esw_setup_dest_fwd_vport() 494 int attr_idx, int dest_idx, bool pkt_reformat) in esw_setup_dest_fwd_ipsec() argument 498 if (pkt_reformat && in esw_setup_dest_fwd_ipsec() 501 flow_act->pkt_reformat = esw_attr->dests[attr_idx].pkt_reformat; in esw_setup_dest_fwd_ipsec() 508 int attr_idx, int dest_idx, bool pkt_reformat) in esw_setup_vport_dest() argument 512 attr_idx, dest_idx, pkt_reformat); in esw_setup_vport_dest() [all …]
|
| H A D | eswitch.h | 530 struct mlx5_pkt_reformat *pkt_reformat; member
|
| /linux-6.15/drivers/net/ethernet/mellanox/mlx5/core/steering/sws/ |
| H A D | fs_dr.c | 259 struct mlx5_pkt_reformat *pkt_reformat; in mlx5_cmd_dr_create_fte() local 336 pkt_reformat = fte->act_dests.action.pkt_reformat; in mlx5_cmd_dr_create_fte() 343 is_decap = pkt_reformat->reformat_type == in mlx5_cmd_dr_create_fte() 348 pkt_reformat->fs_dr_action.dr_action; in mlx5_cmd_dr_create_fte() 465 pkt_reformat = dst->dest_attr.vport.pkt_reformat; in mlx5_cmd_dr_create_fte() 467 pkt_reformat->fs_dr_action.dr_action; in mlx5_cmd_dr_create_fte() 637 struct mlx5_pkt_reformat *pkt_reformat) in mlx5_cmd_dr_packet_reformat_alloc() argument 678 pkt_reformat->owner = MLX5_FLOW_RESOURCE_OWNER_SW; in mlx5_cmd_dr_packet_reformat_alloc() 679 pkt_reformat->fs_dr_action.dr_action = action; in mlx5_cmd_dr_packet_reformat_alloc() 685 struct mlx5_pkt_reformat *pkt_reformat) in mlx5_cmd_dr_packet_reformat_dealloc() argument [all …]
|
| H A D | fs_dr.h | 41 int mlx5_fs_dr_action_get_pkt_reformat_id(struct mlx5_pkt_reformat *pkt_reformat); 52 static inline u32 mlx5_fs_dr_action_get_pkt_reformat_id(struct mlx5_pkt_reformat *pkt_reformat) in mlx5_fs_dr_action_get_pkt_reformat_id() argument
|
| H A D | dr_cmd.c | 844 if (fte->action.pkt_reformat) in mlx5dr_cmd_set_fte() 846 fte->action.pkt_reformat->id); in mlx5dr_cmd_set_fte()
|
| /linux-6.15/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/ |
| H A D | fs_hws.c | 814 fte_action->pkt_reformat->fs_hws_action.hws_action; in mlx5_fs_fte_get_hws_actions() 876 fte_action->pkt_reformat->fs_hws_action.hws_action; in mlx5_fs_fte_get_hws_actions() 1282 struct mlx5_pkt_reformat *pkt_reformat) in mlx5_cmd_hws_packet_reformat_alloc() argument 1362 pkt_reformat->fs_hws_action.pr_data = pr_data; in mlx5_cmd_hws_packet_reformat_alloc() 1365 pkt_reformat->owner = MLX5_FLOW_RESOURCE_OWNER_SW; in mlx5_cmd_hws_packet_reformat_alloc() 1366 pkt_reformat->fs_hws_action.hws_action = hws_action; in mlx5_cmd_hws_packet_reformat_alloc() 1376 struct mlx5_pkt_reformat *pkt_reformat) in mlx5_cmd_hws_packet_reformat_dealloc() argument 1386 if (!pkt_reformat->fs_hws_action.pr_data) { in mlx5_cmd_hws_packet_reformat_dealloc() 1390 pr_data = pkt_reformat->fs_hws_action.pr_data; in mlx5_cmd_hws_packet_reformat_dealloc() 1392 switch (pkt_reformat->reformat_type) { in mlx5_cmd_hws_packet_reformat_dealloc() [all …]
|
| /linux-6.15/drivers/net/ethernet/mellanox/mlx5/core/en/ |
| H A D | tc_tun_encap.c | 171 e->pkt_reformat = mlx5_packet_reformat_alloc(priv->mdev, in mlx5e_tc_encap_flows_add() 174 if (IS_ERR(e->pkt_reformat)) { in mlx5e_tc_encap_flows_add() 176 PTR_ERR(e->pkt_reformat)); in mlx5e_tc_encap_flows_add() 190 esw_attr->dests[flow->tmp_entry_index].pkt_reformat = e->pkt_reformat; in mlx5e_tc_encap_flows_add() 271 e->pkt_reformat = NULL; in mlx5e_tc_encap_flows_del() 927 attr->esw_attr->dests[out_index].pkt_reformat = e->pkt_reformat; in mlx5e_attach_encap() 999 if (IS_ERR(d->pkt_reformat)) { in mlx5e_attach_decap() 1000 err = PTR_ERR(d->pkt_reformat); in mlx5e_attach_decap() 1010 attr->decap_pkt_reformat = d->pkt_reformat; in mlx5e_attach_decap() 1491 e->pkt_reformat = NULL; in mlx5e_invalidate_encap() [all …]
|
| H A D | tc_tun.c | 316 e->pkt_reformat = mlx5_packet_reformat_alloc(priv->mdev, &reformat_params, in mlx5e_tc_tun_create_header_ipv4() 318 if (IS_ERR(e->pkt_reformat)) { in mlx5e_tc_tun_create_header_ipv4() 319 err = PTR_ERR(e->pkt_reformat); in mlx5e_tc_tun_create_header_ipv4() 422 e->pkt_reformat = mlx5_packet_reformat_alloc(priv->mdev, &reformat_params, in mlx5e_tc_tun_update_header_ipv4() 424 if (IS_ERR(e->pkt_reformat)) { in mlx5e_tc_tun_update_header_ipv4() 425 err = PTR_ERR(e->pkt_reformat); in mlx5e_tc_tun_update_header_ipv4() 586 e->pkt_reformat = mlx5_packet_reformat_alloc(priv->mdev, &reformat_params, in mlx5e_tc_tun_create_header_ipv6() 588 if (IS_ERR(e->pkt_reformat)) { in mlx5e_tc_tun_create_header_ipv6() 589 err = PTR_ERR(e->pkt_reformat); in mlx5e_tc_tun_create_header_ipv6() 693 if (IS_ERR(e->pkt_reformat)) { in mlx5e_tc_tun_update_header_ipv6() [all …]
|
| /linux-6.15/drivers/net/ethernet/mellanox/mlx5/core/esw/ |
| H A D | bridge.c | 818 .pkt_reformat = pkt_reformat, in mlx5_esw_bridge_egress_miss_flow_create() 1032 struct mlx5_pkt_reformat *pkt_reformat; in mlx5_esw_bridge_vlan_push_create() local 1050 if (IS_ERR(pkt_reformat)) { in mlx5_esw_bridge_vlan_push_create() 1052 PTR_ERR(pkt_reformat)); in mlx5_esw_bridge_vlan_push_create() 1053 return PTR_ERR(pkt_reformat); in mlx5_esw_bridge_vlan_push_create() 1056 vlan->pkt_reformat_push = pkt_reformat; in mlx5_esw_bridge_vlan_push_create() 1070 struct mlx5_pkt_reformat *pkt_reformat; in mlx5_esw_bridge_vlan_pop_create() local 1078 if (IS_ERR(pkt_reformat)) { in mlx5_esw_bridge_vlan_pop_create() 1080 PTR_ERR(pkt_reformat)); in mlx5_esw_bridge_vlan_pop_create() 1081 return PTR_ERR(pkt_reformat); in mlx5_esw_bridge_vlan_pop_create() [all …]
|
| H A D | bridge_mcast.c | 595 flow_act.pkt_reformat = vlan->pkt_reformat_pop; in mlx5_esw_bridge_mcast_vlan_flow_create()
|
| /linux-6.15/include/linux/mlx5/ |
| H A D | fs.h | 175 struct mlx5_pkt_reformat *pkt_reformat; member 275 struct mlx5_pkt_reformat *pkt_reformat; member
|
| /linux-6.15/drivers/net/ethernet/mellanox/mlx5/core/lib/ |
| H A D | macsec_fs.c | 73 struct mlx5_pkt_reformat *pkt_reformat; member 782 if (tx_rule->pkt_reformat) { in macsec_fs_tx_del_rule() 784 tx_rule->pkt_reformat = NULL; in macsec_fs_tx_del_rule() 846 flow_act.pkt_reformat = mlx5_packet_reformat_alloc(mdev, in macsec_fs_tx_add_rule() 849 if (IS_ERR(flow_act.pkt_reformat)) { in macsec_fs_tx_add_rule() 850 err = PTR_ERR(flow_act.pkt_reformat); in macsec_fs_tx_add_rule() 854 tx_rule->pkt_reformat = flow_act.pkt_reformat; in macsec_fs_tx_add_rule() 1161 flow_act->pkt_reformat = mlx5_packet_reformat_alloc(mdev, in macsec_fs_rx_create_check_decap_rule() 1164 if (IS_ERR(flow_act->pkt_reformat)) { in macsec_fs_rx_create_check_decap_rule() 1165 err = PTR_ERR(flow_act->pkt_reformat); in macsec_fs_rx_create_check_decap_rule() [all …]
|
| /linux-6.15/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ |
| H A D | ipsec_fs.c | 1896 struct mlx5_pkt_reformat *pkt_reformat; in setup_pkt_reformat() local 1913 pkt_reformat = in setup_pkt_reformat() 1916 if (IS_ERR(pkt_reformat)) in setup_pkt_reformat() 1917 return PTR_ERR(pkt_reformat); in setup_pkt_reformat() 1919 flow_act->pkt_reformat = pkt_reformat; in setup_pkt_reformat() 2103 sa_entry->ipsec_rule.pkt_reformat = flow_act.pkt_reformat; in rx_add_rule() 2121 if (flow_act.pkt_reformat) in rx_add_rule() 2122 mlx5_packet_reformat_dealloc(mdev, flow_act.pkt_reformat); in rx_add_rule() 2209 sa_entry->ipsec_rule.pkt_reformat = flow_act.pkt_reformat; in tx_add_rule() 2215 if (flow_act.pkt_reformat) in tx_add_rule() [all …]
|
| H A D | ipsec.h | 212 struct mlx5_pkt_reformat *pkt_reformat; member
|
| /linux-6.15/drivers/infiniband/hw/mlx5/ |
| H A D | fs.c | 179 action->pkt_reformat = in parse_flow_flow_action() 180 maction->flow_action_raw.pkt_reformat; in parse_flow_flow_action() 2240 maction->flow_action_raw.pkt_reformat); in destroy_flow_action_raw() 3228 maction->flow_action_raw.pkt_reformat = in mlx5_ib_flow_action_create_packet_reformat_ctx() 3231 if (IS_ERR(maction->flow_action_raw.pkt_reformat)) { in mlx5_ib_flow_action_create_packet_reformat_ctx() 3232 ret = PTR_ERR(maction->flow_action_raw.pkt_reformat); in mlx5_ib_flow_action_create_packet_reformat_ctx()
|
| H A D | mlx5_ib.h | 1056 struct mlx5_pkt_reformat *pkt_reformat; member
|