/linux-6.3-rc2/drivers/net/ethernet/mellanox/mlx5/core/ |
A D | eswitch.c | 96 if (!esw || !MLX5_CAP_GEN(esw->dev, vport_group_manager)) in mlx5_eswitch_get_vport() 1017 mlx5_eq_notifier_register(esw->dev, &esw->nb); in mlx5_eswitch_event_handlers_register() 1031 mlx5_eq_notifier_unregister(esw->dev, &esw->nb); in mlx5_eswitch_event_handlers_unregister() 1334 esw->esw_funcs.num_vfs, esw->enabled_vports); in mlx5_eswitch_enable_locked() 1336 mlx5_esw_mode_change_notify(esw, esw->mode); in mlx5_eswitch_enable_locked() 1404 esw->esw_funcs.num_vfs, esw->enabled_vports); in mlx5_eswitch_disable_sriov() 1441 esw->esw_funcs.num_vfs, esw->enabled_vports); in mlx5_eswitch_disable_locked() 1625 esw = kzalloc(sizeof(*esw), GFP_KERNEL); in mlx5_eswitch_init() 1626 if (!esw) in mlx5_eswitch_init() 1693 if (!esw || !MLX5_VPORT_MANAGER(esw->dev)) in mlx5_eswitch_cleanup() [all …]
|
A D | eswitch_offloads.c | 1753 esw_chains_destroy(esw, esw_chains(esw)); in esw_create_offloads_fdb_tables() 1781 esw_chains_destroy(esw, esw_chains(esw)); in esw_destroy_offloads_fdb_tables() 2378 err = esw->offloads.rep_ops[rep_type]->load(esw->dev, rep); in mlx5_esw_offloads_rep_load() 2540 vport = mlx5_eswitch_get_vport(esw, esw->manager_vport); in esw_set_master_egress_rule() 2802 esw); in esw_offloads_devcom_init() 3023 if (!esw || esw->mode != MLX5_ESWITCH_OFFLOADS) in mlx5_eswitch_reload_reps() 3140 mlx5_eswitch_unload_vf_vports(esw, esw->esw_funcs.num_vfs); in esw_vfs_changed_event_handler() 3162 esw = host_work->esw; in esw_functions_changed_event_handler() 3187 host_work->esw = esw; in mlx5_esw_funcs_changed_handler() 3416 if (IS_ERR(esw)) in mlx5_devlink_eswitch_mode_set() [all …]
|
A D | eswitch.h | 86 #define esw_chains(esw) \ argument 87 ((esw)->fdb_table.offloads.esw_chains_priv) 280 struct mlx5_eswitch *esw; member 351 int esw_offloads_init(struct mlx5_eswitch *esw); 564 return esw && MLX5_ESWITCH_MANAGER(esw->dev); in mlx5_esw_allowed() 577 return esw->manager_vport == vport_num; in mlx5_esw_is_manager_vport() 627 xa_for_each(&((esw)->vports), index, vport) 739 void mlx5_esw_unlock(struct mlx5_eswitch *esw); 753 if (mlx5_esw_allowed(esw)) in mlx5_eswitch_num_vfs() 754 return esw->esw_funcs.num_vfs; in mlx5_eswitch_num_vfs() [all …]
|
A D | eswitch_offloads_termtbl.c | 122 mutex_lock(&esw->offloads.termtbl_mutex); in mlx5_eswitch_termtbl_get_create() 124 hash_for_each_possible(esw->offloads.termtbl_tbl, tt, in mlx5_eswitch_termtbl_get_create() 154 mutex_unlock(&esw->offloads.termtbl_mutex); in mlx5_eswitch_termtbl_get_create() 158 mutex_unlock(&esw->offloads.termtbl_mutex); in mlx5_eswitch_termtbl_get_create() 163 mlx5_eswitch_termtbl_put(struct mlx5_eswitch *esw, in mlx5_eswitch_termtbl_put() argument 166 mutex_lock(&esw->offloads.termtbl_mutex); in mlx5_eswitch_termtbl_put() 169 mutex_unlock(&esw->offloads.termtbl_mutex); in mlx5_eswitch_termtbl_put() 202 if (MLX5_CAP_ESW_FLOWTABLE(esw->dev, flow_source)) in mlx5_eswitch_offload_is_uplink_port() 226 mlx5_eswitch_termtbl_required(struct mlx5_eswitch *esw, in mlx5_eswitch_termtbl_required() argument 240 if (mlx5_eswitch_is_push_vlan_no_cap(esw, flow_act)) in mlx5_eswitch_termtbl_required() [all …]
|
/linux-6.3-rc2/drivers/net/ethernet/mellanox/mlx5/core/esw/ |
A D | legacy.c | 54 if (!esw->fdb_table.legacy.fdb) in esw_destroy_legacy_fdb_table() 209 esw_cleanup_vepa_rules(esw); in esw_destroy_legacy_table() 228 mlx5_esw_for_each_vf_vport(esw, i, vport, esw->esw_funcs.num_vfs) in esw_legacy_enable() 317 if (!esw) in mlx5_eswitch_set_vepa() 320 if (!mlx5_esw_allowed(esw)) in mlx5_eswitch_set_vepa() 338 if (!esw) in mlx5_eswitch_get_vepa() 341 if (!mlx5_esw_allowed(esw)) in mlx5_eswitch_get_vepa() 434 if (!mlx5_esw_allowed(esw)) in mlx5_eswitch_set_vport_vlan() 463 if (!mlx5_esw_allowed(esw)) in mlx5_eswitch_set_vport_spoofchk() 476 mlx5_core_warn(esw->dev, in mlx5_eswitch_set_vport_spoofchk() [all …]
|
A D | qos.c | 77 esw_warn(esw->dev, in esw_qos_vport_config() 484 esw_qos_put(esw); in esw_qos_create_rate_group() 523 esw_qos_put(esw); in esw_qos_destroy_rate_group() 577 esw->qos.group0 = __esw_qos_create_rate_group(esw, extack); in esw_qos_create() 601 if (esw->qos.group0) in esw_qos_destroy() 602 __esw_qos_destroy_rate_group(esw, esw->qos.group0, NULL); in esw_qos_destroy() 659 esw_qos_put(esw); in esw_qos_vport_enable() 684 esw_qos_put(esw); in mlx5_esw_qos_vport_disable() 870 if (IS_ERR(esw)) in mlx5_esw_devlink_rate_node_new() 871 return PTR_ERR(esw); in mlx5_esw_devlink_rate_node_new() [all …]
|
A D | indir_table.c | 67 mlx5_esw_indir_table_needed(struct mlx5_eswitch *esw, in mlx5_esw_indir_table_needed() argument 76 mlx5_esw_is_sf_vport(esw, vport_num); in mlx5_esw_indir_table_needed() 83 esw->dev == dest_mdev && in mlx5_esw_indir_table_needed() 100 struct mlx5_fs_chains *chains = esw_chains(esw); in mlx5_esw_indir_table_rule_get() 175 struct mlx5_fs_chains *chains = esw_chains(esw); in mlx5_esw_indir_table_rule_put() 185 mlx5_modify_header_dealloc(esw->dev, rule->mh); in mlx5_esw_indir_table_rule_put() 289 err = mlx5_create_indir_fwd_group(esw, e); in mlx5_esw_indir_table_entry_create() 300 mlx5_esw_indir_table_rule_put(esw, e); in mlx5_esw_indir_table_entry_create() 330 mutex_lock(&esw->fdb_table.offloads.indir->lock); in mlx5_esw_indir_table_get() 361 mutex_lock(&esw->fdb_table.offloads.indir->lock); in mlx5_esw_indir_table_put() [all …]
|
A D | vporttbl.c | 54 key->vhca_id = MLX5_CAP_GEN(esw->dev, vhca_id); in flow_attr_to_vport_key() 75 struct mlx5_core_dev *dev = esw->dev; in mlx5_esw_vporttbl_get() 82 mutex_lock(&esw->fdb_table.offloads.vports.lock); in mlx5_esw_vporttbl_get() 83 hkey = flow_attr_to_vport_key(esw, attr, &skey); in mlx5_esw_vporttbl_get() 84 e = esw_vport_tbl_lookup(esw, &skey, hkey); in mlx5_esw_vporttbl_get() 112 mutex_unlock(&esw->fdb_table.offloads.vports.lock); in mlx5_esw_vporttbl_get() 118 mutex_unlock(&esw->fdb_table.offloads.vports.lock); in mlx5_esw_vporttbl_get() 129 mutex_lock(&esw->fdb_table.offloads.vports.lock); in mlx5_esw_vporttbl_put() 130 hkey = flow_attr_to_vport_key(esw, attr, &key); in mlx5_esw_vporttbl_put() 131 e = esw_vport_tbl_lookup(esw, &key, hkey); in mlx5_esw_vporttbl_put() [all …]
|
A D | devlink_port.c | 21 mlx5_eswitch_is_vf_vport(esw, vport_num); in mlx5_esw_devlink_port_supported() 26 struct mlx5_core_dev *dev = esw->dev; in mlx5_esw_dl_port_alloc() 70 struct mlx5_core_dev *dev = esw->dev; in mlx5_esw_offloads_devlink_port_register() 77 if (!mlx5_esw_devlink_port_supported(esw, vport_num)) in mlx5_esw_offloads_devlink_port_register() 80 vport = mlx5_eswitch_get_vport(esw, vport_num); in mlx5_esw_offloads_devlink_port_register() 84 dl_port = mlx5_esw_dl_port_alloc(esw, vport_num); in mlx5_esw_offloads_devlink_port_register() 115 vport = mlx5_eswitch_get_vport(esw, vport_num); in mlx5_esw_offloads_devlink_port_unregister() 133 vport = mlx5_eswitch_get_vport(esw, vport_num); in mlx5_esw_offloads_devlink_port() 140 struct mlx5_core_dev *dev = esw->dev; in mlx5_esw_devlink_sf_port_register() 148 vport = mlx5_eswitch_get_vport(esw, vport_num); in mlx5_esw_devlink_sf_port_register() [all …]
|
A D | bridge.c | 208 esw_warn(esw->dev, in mlx5_esw_bridge_ingress_vlan_proto_fg_create() 453 struct mlx5_eswitch *esw = br_offloads->esw; in mlx5_esw_bridge_ingress_table_init() local 461 esw); in mlx5_esw_bridge_ingress_table_init() 467 esw); in mlx5_esw_bridge_ingress_table_init() 558 struct mlx5_eswitch *esw = br_offloads->esw; in mlx5_esw_bridge_egress_table_init() local 564 esw); in mlx5_esw_bridge_egress_table_init() 1248 struct mlx5_eswitch *esw = bridge->br_offloads->esw; in mlx5_esw_bridge_vlan_flush() local 1379 esw); in mlx5_esw_bridge_fdb_entry_init() 1541 struct mlx5_eswitch *esw = br_offloads->esw; in mlx5_esw_bridge_vport_init() local 1766 struct mlx5_eswitch *esw = br_offloads->esw; in mlx5_esw_bridge_fdb_remove() local [all …]
|
A D | debugfs.c | 134 void mlx5_esw_vport_debugfs_destroy(struct mlx5_eswitch *esw, u16 vport_num) in mlx5_esw_vport_debugfs_destroy() argument 136 struct mlx5_vport *vport = mlx5_eswitch_get_vport(esw, vport_num); in mlx5_esw_vport_debugfs_destroy() 147 struct mlx5_vport *vport = mlx5_eswitch_get_vport(esw, vport_num); in mlx5_esw_vport_debugfs_create() 152 if (!MLX5_CAP_GEN(esw->dev, vport_group_manager)) in mlx5_esw_vport_debugfs_create() 166 vport->dbgfs = debugfs_create_dir(dir_name, esw->dbgfs); in mlx5_esw_vport_debugfs_create() 169 if (MLX5_CAP_GEN(esw->dev, vnic_env_queue_counters)) { in mlx5_esw_vport_debugfs_create() 176 if (MLX5_CAP_GEN(esw->dev, eq_overrun_count)) { in mlx5_esw_vport_debugfs_create() 183 if (MLX5_CAP_GEN(esw->dev, vnic_env_cq_overrun)) in mlx5_esw_vport_debugfs_create() 186 if (MLX5_CAP_GEN(esw->dev, invalid_command_count)) in mlx5_esw_vport_debugfs_create() 190 if (MLX5_CAP_GEN(esw->dev, quota_exceeded_count)) in mlx5_esw_vport_debugfs_create() [all …]
|
A D | indir_table.h | 14 struct mlx5_flow_table *mlx5_esw_indir_table_get(struct mlx5_eswitch *esw, 17 void mlx5_esw_indir_table_put(struct mlx5_eswitch *esw, 21 mlx5_esw_indir_table_needed(struct mlx5_eswitch *esw, 43 mlx5_esw_indir_table_get(struct mlx5_eswitch *esw, in mlx5_esw_indir_table_get() argument 51 mlx5_esw_indir_table_put(struct mlx5_eswitch *esw, in mlx5_esw_indir_table_put() argument 57 mlx5_esw_indir_table_needed(struct mlx5_eswitch *esw, in mlx5_esw_indir_table_needed() argument
|
/linux-6.3-rc2/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ |
A D | ingress_ofld.c | 10 esw_acl_ingress_prio_tag_enabled(struct mlx5_eswitch *esw, in esw_acl_ingress_prio_tag_enabled() argument 13 return (MLX5_CAP_GEN(esw->dev, prio_tag_required) && in esw_acl_ingress_prio_tag_enabled() 14 mlx5_eswitch_is_vf_vport(esw, vport->vport)); in esw_acl_ingress_prio_tag_enabled() 52 esw_warn(esw->dev, in esw_acl_ingress_prio_tag_create() 87 esw_warn(esw->dev, in esw_acl_ingress_mod_metadata_create() 101 esw_warn(esw->dev, in esw_acl_ingress_mod_metadata_create() 159 esw_warn(esw->dev, in esw_acl_ingress_ofld_rules_create() 169 esw_warn(esw->dev, in esw_acl_ingress_ofld_rules_create() 334 esw_debug(esw->dev, in esw_acl_ingress_ofld_setup() 353 esw_acl_ingress_ofld_rules_destroy(esw, vport); in esw_acl_ingress_ofld_cleanup() [all …]
|
A D | egress_ofld.c | 47 esw_warn(esw->dev, in esw_acl_egress_ofld_fwd2vport_create() 63 if (MLX5_CAP_GEN(esw->dev, prio_tag_required)) { in esw_acl_egress_ofld_rules_create() 68 esw_debug(esw->dev, in esw_acl_egress_ofld_rules_create() 111 if (MLX5_CAP_GEN(esw->dev, prio_tag_required)) { in esw_acl_egress_ofld_groups_create() 112 ret = esw_acl_egress_vlan_grp_create(esw, vport); in esw_acl_egress_ofld_groups_create() 119 if (!mlx5_esw_acl_egress_fwd2vport_supported(esw)) in esw_acl_egress_ofld_groups_create() 136 esw_warn(esw->dev, in esw_acl_egress_ofld_groups_create() 169 return mlx5_eswitch_is_vf_vport(esw, vport_num) || mlx5_esw_is_sf_vport(esw, vport_num); in esw_acl_egress_needed() 178 !MLX5_CAP_GEN(esw->dev, prio_tag_required)) in esw_acl_egress_ofld_setup() 181 if (!esw_acl_egress_needed(esw, vport->vport)) in esw_acl_egress_ofld_setup() [all …]
|
A D | ofld.h | 11 int esw_acl_egress_ofld_setup(struct mlx5_eswitch *esw, struct mlx5_vport *vport); 13 int mlx5_esw_acl_egress_vport_bond(struct mlx5_eswitch *esw, u16 active_vport_num, 15 int mlx5_esw_acl_egress_vport_unbond(struct mlx5_eswitch *esw, u16 vport_num); 17 static inline bool mlx5_esw_acl_egress_fwd2vport_supported(struct mlx5_eswitch *esw) in mlx5_esw_acl_egress_fwd2vport_supported() argument 19 return esw && esw->mode == MLX5_ESWITCH_OFFLOADS && in mlx5_esw_acl_egress_fwd2vport_supported() 20 mlx5_eswitch_vport_match_metadata_enabled(esw) && in mlx5_esw_acl_egress_fwd2vport_supported() 21 MLX5_CAP_ESW_FLOWTABLE(esw->dev, egress_acl_forward_to_vport); in mlx5_esw_acl_egress_fwd2vport_supported() 25 int esw_acl_ingress_ofld_setup(struct mlx5_eswitch *esw, struct mlx5_vport *vport); 26 void esw_acl_ingress_ofld_cleanup(struct mlx5_eswitch *esw, struct mlx5_vport *vport); 34 mlx5_esw_acl_ingress_vport_drop_rule_destroy(struct mlx5_eswitch *esw, in mlx5_esw_acl_ingress_vport_drop_rule_destroy() argument [all …]
|
A D | egress_lgcy.c | 22 struct mlx5_core_dev *dev = esw->dev; in esw_acl_egress_lgcy_groups_create() 27 err = esw_acl_egress_vlan_grp_create(esw, vport); in esw_acl_egress_lgcy_groups_create() 67 int esw_acl_egress_lgcy_setup(struct mlx5_eswitch *esw, in esw_acl_egress_lgcy_setup() argument 87 drop_counter = mlx5_fc_create(esw->dev, false); in esw_acl_egress_lgcy_setup() 89 esw_warn(esw->dev, in esw_acl_egress_lgcy_setup() 100 esw_acl_egress_lgcy_cleanup(esw, vport); in esw_acl_egress_lgcy_setup() 105 vport->egress.acl = esw_acl_table_create(esw, vport, in esw_acl_egress_lgcy_setup() 114 err = esw_acl_egress_lgcy_groups_create(esw, vport); in esw_acl_egress_lgcy_setup() 119 esw_debug(esw->dev, in esw_acl_egress_lgcy_setup() 147 esw_warn(esw->dev, in esw_acl_egress_lgcy_setup() [all …]
|
A D | ingress_lgcy.c | 22 struct mlx5_core_dev *dev = esw->dev; in esw_acl_ingress_lgcy_groups_create() 139 int esw_acl_ingress_lgcy_setup(struct mlx5_eswitch *esw, in esw_acl_ingress_lgcy_setup() argument 169 counter = mlx5_fc_create(esw->dev, false); in esw_acl_ingress_lgcy_setup() 171 esw_warn(esw->dev, in esw_acl_ingress_lgcy_setup() 180 esw_acl_ingress_lgcy_cleanup(esw, vport); in esw_acl_ingress_lgcy_setup() 185 vport->ingress.acl = esw_acl_table_create(esw, vport, in esw_acl_ingress_lgcy_setup() 194 err = esw_acl_ingress_lgcy_groups_create(esw, vport); in esw_acl_ingress_lgcy_setup() 199 esw_debug(esw->dev, in esw_acl_ingress_lgcy_setup() 247 esw_warn(esw->dev, in esw_acl_ingress_lgcy_setup() 272 esw_warn(esw->dev, in esw_acl_ingress_lgcy_setup() [all …]
|
/linux-6.3-rc2/include/linux/mlx5/ |
A D | eswitch.h | 41 int (*event)(struct mlx5_eswitch *esw, 59 struct mlx5_eswitch *esw; member 62 void mlx5_eswitch_register_vport_reps(struct mlx5_eswitch *esw, 66 void *mlx5_eswitch_get_proto_dev(struct mlx5_eswitch *esw, 69 struct mlx5_eswitch_rep *mlx5_eswitch_vport_rep(struct mlx5_eswitch *esw, 81 bool mlx5_eswitch_reg_c1_loopback_enabled(const struct mlx5_eswitch *esw); 104 u32 mlx5_eswitch_get_vport_metadata_for_match(struct mlx5_eswitch *esw, 106 u32 mlx5_eswitch_get_vport_metadata_for_set(struct mlx5_eswitch *esw, 149 struct mlx5_core_dev *mlx5_eswitch_get_core_dev(struct mlx5_eswitch *esw); 165 mlx5_eswitch_reg_c1_loopback_enabled(const struct mlx5_eswitch *esw) in mlx5_eswitch_reg_c1_loopback_enabled() argument [all …]
|
/linux-6.3-rc2/drivers/s390/cio/ |
A D | device_status.c | 125 cdev_irb->esw.esw1.lpum = irb->esw.esw1.lpum; in ccw_device_accumulate_esw() 159 cdev_irb->esw.esw0.erw.cpt = irb->esw.esw0.erw.cpt; in ccw_device_accumulate_esw() 161 cdev_irb->esw.esw0.erw.fsavf = irb->esw.esw0.erw.fsavf; in ccw_device_accumulate_esw() 164 memcpy(cdev_irb->esw.esw0.faddr, irb->esw.esw0.faddr, in ccw_device_accumulate_esw() 167 cdev_irb->esw.esw0.erw.fsaf = irb->esw.esw0.erw.fsaf; in ccw_device_accumulate_esw() 170 cdev_irb->esw.esw0.erw.scavf = irb->esw.esw0.erw.scavf; in ccw_device_accumulate_esw() 173 cdev_irb->esw.esw0.saddr = irb->esw.esw0.saddr; in ccw_device_accumulate_esw() 179 cdev_irb->esw.esw0.erw.auth = irb->esw.esw0.erw.auth; in ccw_device_accumulate_esw() 181 cdev_irb->esw.esw0.erw.pvrf = irb->esw.esw0.erw.pvrf; in ccw_device_accumulate_esw() 185 cdev_irb->esw.esw0.erw.cons = irb->esw.esw0.erw.cons; in ccw_device_accumulate_esw() [all …]
|
/linux-6.3-rc2/drivers/infiniband/hw/mlx5/ |
A D | ib_rep.c | 25 mlx5_ib_get_rep_netdev(rep->esw, rep->vport); in mlx5_ib_set_vport_rep() 147 struct mlx5_eswitch *esw; in mlx5_ib_vport_rep_unload() local 151 esw = peer_mdev->priv.eswitch; in mlx5_ib_vport_rep_unload() 167 struct mlx5_eswitch *esw; in mlx5_ib_register_peer_vport_reps() local 172 esw = peer_mdev->priv.eswitch; in mlx5_ib_register_peer_vport_reps() 197 return mlx5_eswitch_add_send_to_vport_rule(esw, esw, rep, sq->base.mqp.qpn); in create_flow_rule_vport_sq() 205 struct mlx5_eswitch *esw; in mlx5r_rep_probe() local 207 esw = mdev->priv.eswitch; in mlx5r_rep_probe() 216 struct mlx5_eswitch *esw; in mlx5r_rep_remove() local 218 esw = mdev->priv.eswitch; in mlx5r_rep_remove() [all …]
|
/linux-6.3-rc2/drivers/net/ethernet/mellanox/mlx5/core/en/tc/ |
A D | sample.c | 24 struct mlx5_eswitch *esw; member 63 struct mlx5_eswitch *esw = tc_psample->esw; in sampler_termtbl_create() local 66 struct mlx5_core_dev *dev = esw->dev; in sampler_termtbl_create() 95 dest.vport.num = esw->manager_vport; in sampler_termtbl_create() 265 struct mlx5_eswitch *esw = tc_psample->esw; in sample_restore_get() local 266 struct mlx5_core_dev *mdev = esw->dev; in sample_restore_get() 480 struct mlx5_eswitch *esw; in mlx5e_tc_sample_offload() local 499 esw = tc_psample->esw; in mlx5e_tc_sample_offload() 594 struct mlx5_eswitch *esw; in mlx5e_tc_sample_unoffload() local 602 esw = tc_psample->esw; in mlx5e_tc_sample_unoffload() [all …]
|
A D | int_port.c | 33 return mlx5_eswitch_vport_match_metadata_enabled(esw) && in mlx5e_tc_int_port_supported() 34 MLX5_CAP_GEN(esw->dev, reg_c_preserve); in mlx5e_tc_int_port_supported() 61 mlx5e_int_port_create_rx_rule(struct mlx5_eswitch *esw, in mlx5e_int_port_create_rx_rule() argument 154 struct mlx5_eswitch *esw = priv->dev->priv.eswitch; in mlx5e_int_port_add() local 182 ctx = esw->offloads.reg_c0_obj_pool; in mlx5e_int_port_add() 230 struct mlx5_eswitch *esw = priv->dev->priv.eswitch; in mlx5e_int_port_remove() local 233 ctx = esw->offloads.reg_c0_obj_pool; in mlx5e_int_port_remove() 308 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in mlx5e_tc_int_port_init() local 312 if (!mlx5e_tc_int_port_supported(esw)) in mlx5e_tc_int_port_init() 360 struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; in mlx5e_tc_int_port_init_rep_rx() local [all …]
|
/linux-6.3-rc2/drivers/net/ethernet/mellanox/mlx5/core/en/rep/ |
A D | bridge.c | 26 return esw == priv->mdev->priv.eswitch; in mlx5_esw_bridge_dev_same_esw() 36 esw_mdev = esw->dev; in mlx5_esw_bridge_dev_same_hw() 113 struct mlx5_eswitch *esw) in mlx5_esw_bridge_is_local() argument 136 struct mlx5_eswitch *esw = br_offloads->esw; in mlx5_esw_bridge_port_changeupper() local 418 struct mlx5_eswitch *esw = br_offloads->esw; in mlx5_esw_bridge_switchdev_event() local 494 struct mlx5_eswitch *esw = in mlx5e_rep_bridge_init() local 499 br_offloads = mlx5_esw_bridge_init(esw); in mlx5e_rep_bridge_init() 546 mlx5_esw_bridge_cleanup(esw); in mlx5e_rep_bridge_init() 554 struct mlx5_eswitch *esw = in mlx5e_rep_bridge_cleanup() local 557 br_offloads = esw->br_offloads; in mlx5e_rep_bridge_cleanup() [all …]
|
A D | tc.c | 101 mutex_lock(&esw->offloads.encap_tbl_lock); in mlx5e_rep_update_flows() 127 mutex_unlock(&esw->offloads.encap_tbl_lock); in mlx5e_rep_update_flows() 191 struct mlx5_eswitch *esw; in mlx5e_rep_setup_ft_cb() local 198 esw = priv->mdev->priv.eswitch; in mlx5e_rep_setup_ft_cb() 373 struct mlx5_eswitch *esw; in mlx5e_rep_indr_setup_ft_cb() local 378 esw = mpriv->mdev->priv.eswitch; in mlx5e_rep_indr_setup_ft_cb() 533 if (esw && esw->mode == MLX5_ESWITCH_OFFLOADS) in mlx5e_rep_indr_replace_act() 562 if (esw && esw->mode == MLX5_ESWITCH_OFFLOADS) in mlx5e_rep_indr_destroy_act() 584 if (esw && esw->mode == MLX5_ESWITCH_OFFLOADS) in mlx5e_rep_indr_stats_act() 676 struct mlx5_eswitch *esw; in mlx5e_rep_tc_receive() local [all …]
|
/linux-6.3-rc2/drivers/net/ethernet/mellanox/mlx5/core/en/ |
A D | tc_tun_encap.c | 407 struct mlx5_eswitch *esw; in mlx5e_tc_update_neigh_used_value() local 410 esw = priv->mdev->priv.eswitch; in mlx5e_tc_update_neigh_used_value() 411 mutex_lock(&esw->offloads.encap_tbl_lock); in mlx5e_tc_update_neigh_used_value() 530 mutex_lock(&esw->offloads.encap_tbl_lock); in mlx5e_detach_encap() 553 mutex_lock(&esw->offloads.decap_tbl_lock); in mlx5e_detach_decap() 801 mutex_lock(&esw->offloads.encap_tbl_lock); in mlx5e_attach_encap() 857 mutex_lock(&esw->offloads.encap_tbl_lock); in mlx5e_attach_encap() 929 mutex_lock(&esw->offloads.decap_tbl_lock); in mlx5e_attach_decap() 966 mutex_lock(&esw->offloads.decap_tbl_lock); in mlx5e_attach_decap() 1570 struct mlx5_eswitch *esw; in mlx5e_tc_fib_event_work() local [all …]
|