drivers/gpu/drm/i915/gt/intel_gt_debugfs.c
73
DEFINE_INTEL_GT_DEBUGFS_ATTRIBUTE(steering);
drivers/gpu/drm/xe/xe_gt_debugfs.c
248
{ "steering", .show = xe_gt_debugfs_show_with_rpm, .data = steering },
drivers/gpu/drm/xe/xe_gt_mcr.c
308
gt->steering[L3BANK].group_target = node;
drivers/gpu/drm/xe/xe_gt_mcr.c
309
gt->steering[L3BANK].instance_target = first_bank % banks_per_node;
drivers/gpu/drm/xe/xe_gt_mcr.c
312
gt->steering[NODE].group_target = node >> 1;
drivers/gpu/drm/xe/xe_gt_mcr.c
313
gt->steering[NODE].instance_target = node & 1;
drivers/gpu/drm/xe/xe_gt_mcr.c
324
gt->steering[L3BANK].group_target = __ffs(mslice_mask);
drivers/gpu/drm/xe/xe_gt_mcr.c
325
gt->steering[L3BANK].instance_target =
drivers/gpu/drm/xe/xe_gt_mcr.c
337
gt->steering[L3BANK].group_target = (bank >> 2) & 0x7;
drivers/gpu/drm/xe/xe_gt_mcr.c
338
gt->steering[L3BANK].instance_target = bank & 0x3;
drivers/gpu/drm/xe/xe_gt_mcr.c
343
gt->steering[L3BANK].group_target = 0; /* unused */
drivers/gpu/drm/xe/xe_gt_mcr.c
344
gt->steering[L3BANK].instance_target = __ffs(fuse);
drivers/gpu/drm/xe/xe_gt_mcr.c
360
gt->steering[MSLICE].group_target = __ffs(mask);
drivers/gpu/drm/xe/xe_gt_mcr.c
361
gt->steering[MSLICE].instance_target = 0; /* unused */
drivers/gpu/drm/xe/xe_gt_mcr.c
368
gt->steering[LNCF].group_target = __ffs(mask) << 1;
drivers/gpu/drm/xe/xe_gt_mcr.c
369
gt->steering[LNCF].instance_target = 0; /* unused */
drivers/gpu/drm/xe/xe_gt_mcr.c
441
>->steering[DSS].group_target,
drivers/gpu/drm/xe/xe_gt_mcr.c
442
>->steering[DSS].instance_target);
drivers/gpu/drm/xe/xe_gt_mcr.c
452
gt->steering[OADDRM].group_target = 0;
drivers/gpu/drm/xe/xe_gt_mcr.c
454
gt->steering[OADDRM].group_target = 1;
drivers/gpu/drm/xe/xe_gt_mcr.c
456
gt->steering[OADDRM].instance_target = 0; /* unused */
drivers/gpu/drm/xe/xe_gt_mcr.c
465
gt->steering[SQIDI_PSMI].group_target = select >> 1;
drivers/gpu/drm/xe/xe_gt_mcr.c
466
gt->steering[SQIDI_PSMI].instance_target = select & 0x1;
drivers/gpu/drm/xe/xe_gt_mcr.c
471
gt->steering[GAM1].group_target = 1;
drivers/gpu/drm/xe/xe_gt_mcr.c
472
gt->steering[GAM1].instance_target = 0;
drivers/gpu/drm/xe/xe_gt_mcr.c
513
gt->steering[OADDRM].ranges = xe2lpm_gpmxmt_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
514
gt->steering[INSTANCE0].ranges = xe3lpm_instance0_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
516
gt->steering[OADDRM].ranges = xe2lpm_gpmxmt_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
517
gt->steering[INSTANCE0].ranges = xe2lpm_instance0_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
519
gt->steering[OADDRM].ranges = xelpmp_oaddrm_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
523
gt->steering[DSS].ranges = xe3p_xpc_xecore_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
524
gt->steering[GAM1].ranges = xe3p_xpc_gam_grp1_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
525
gt->steering[INSTANCE0].ranges = xe3p_xpc_instance0_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
526
gt->steering[L3BANK].ranges = xelpg_l3bank_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
527
gt->steering[NODE].ranges = xe2_node_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
529
gt->steering[DSS].ranges = xe2lpg_dss_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
530
gt->steering[INSTANCE0].ranges = xe3p_lpg_instance0_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
532
gt->steering[DSS].ranges = xe2lpg_dss_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
533
gt->steering[SQIDI_PSMI].ranges = xe2lpg_sqidi_psmi_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
534
gt->steering[INSTANCE0].ranges = xe2lpg_instance0_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
535
gt->steering[L3BANK].ranges = xelpg_l3bank_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
536
gt->steering[NODE].ranges = xe2_node_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
538
gt->steering[INSTANCE0].ranges = xelpg_instance0_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
539
gt->steering[L3BANK].ranges = xelpg_l3bank_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
540
gt->steering[DSS].ranges = xelpg_dss_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
542
gt->steering[INSTANCE0].ranges = xehpc_instance0_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
543
gt->steering[DSS].ranges = xehpc_dss_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
545
gt->steering[L3BANK].ranges = xehp_l3bank_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
546
gt->steering[MSLICE].ranges = xehp_mslice_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
547
gt->steering[LNCF].ranges = xehp_lncf_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
548
gt->steering[DSS].ranges = xehp_dss_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
549
gt->steering[IMPLICIT_STEERING].ranges = dg2_implicit_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
551
gt->steering[L3BANK].ranges = xelp_l3bank_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
552
gt->steering[DSS].ranges = xelp_dss_steering_table;
drivers/gpu/drm/xe/xe_gt_mcr.c
557
gt->steering[INSTANCE0].initialized = true;
drivers/gpu/drm/xe/xe_gt_mcr.c
571
gt->steering[i].initialized = true;
drivers/gpu/drm/xe/xe_gt_mcr.c
572
if (gt->steering[i].ranges && xe_steering_types[i].init)
drivers/gpu/drm/xe/xe_gt_mcr.c
611
if (!gt->steering[type].ranges)
drivers/gpu/drm/xe/xe_gt_mcr.c
614
for (int i = 0; gt->steering[type].ranges[i].end > 0; i++)
drivers/gpu/drm/xe/xe_gt_mcr.c
615
if (xe_mmio_in_range(>->mmio, >->steering[type].ranges[i], reg))
drivers/gpu/drm/xe/xe_gt_mcr.c
665
drm_WARN(>_to_xe(gt)->drm, !gt->steering[type].initialized,
drivers/gpu/drm/xe/xe_gt_mcr.c
669
*group = gt->steering[type].group_target;
drivers/gpu/drm/xe/xe_gt_mcr.c
670
*instance = gt->steering[type].instance_target;
drivers/gpu/drm/xe/xe_gt_mcr.c
896
if (gt->steering[i].ranges) {
drivers/gpu/drm/xe/xe_gt_mcr.c
899
gt->steering[i].group_target,
drivers/gpu/drm/xe/xe_gt_mcr.c
900
gt->steering[i].instance_target);
drivers/gpu/drm/xe/xe_gt_mcr.c
901
for (int j = 0; gt->steering[i].ranges[j].end; j++)
drivers/gpu/drm/xe/xe_gt_mcr.c
903
gt->steering[i].ranges[j].start,
drivers/gpu/drm/xe/xe_gt_mcr.c
904
gt->steering[i].ranges[j].end);
drivers/gpu/drm/xe/xe_gt_types.h
314
} steering[NUM_STEERING_TYPES];
drivers/net/ethernet/mellanox/mlx4/port.c
1746
u8 steering;
drivers/net/ethernet/mellanox/mlx4/port.c
1749
int mlx4_SET_PORT_VXLAN(struct mlx4_dev *dev, u8 port, u8 steering, int enable)
drivers/net/ethernet/mellanox/mlx4/port.c
1765
context->steering = steering;
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
2101
if (ct_priv->dev->priv.steering->mode == MLX5_FLOW_STEERING_MODE_HMFS) {
drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
2104
} else if (ct_priv->dev->priv.steering->mode == MLX5_FLOW_STEERING_MODE_SMFS) {
drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_encap.c
31
if (priv->mdev->priv.steering->mode == MLX5_FLOW_STEERING_MODE_DMFS &&
drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_offload.c
46
(mdev->priv.steering->mode == MLX5_FLOW_STEERING_MODE_DMFS ||
drivers/net/ethernet/mellanox/mlx5/core/esw/adj_vport.c
116
mlx5_fs_vport_egress_acl_ns_remove(esw->dev->priv.steering,
drivers/net/ethernet/mellanox/mlx5/core/esw/adj_vport.c
118
mlx5_fs_vport_ingress_acl_ns_remove(esw->dev->priv.steering,
drivers/net/ethernet/mellanox/mlx5/core/esw/adj_vport.c
88
mlx5_fs_vport_egress_acl_ns_add(esw->dev->priv.steering, vport->index);
drivers/net/ethernet/mellanox/mlx5/core/esw/adj_vport.c
89
mlx5_fs_vport_ingress_acl_ns_add(esw->dev->priv.steering, vport->index);
drivers/net/ethernet/mellanox/mlx5/core/esw/adj_vport.c
97
mlx5_fs_vport_ingress_acl_ns_remove(esw->dev->priv.steering,
drivers/net/ethernet/mellanox/mlx5/core/esw/adj_vport.c
99
mlx5_fs_vport_egress_acl_ns_remove(esw->dev->priv.steering,
drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
1749
struct mlx5_flow_steering *steering = dev->priv.steering;
drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
1755
err = mlx5_fs_vport_egress_acl_ns_add(steering, i);
drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
1763
mlx5_fs_vport_egress_acl_ns_remove(steering, i);
drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
1769
struct mlx5_flow_steering *steering = dev->priv.steering;
drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
1774
mlx5_fs_vport_egress_acl_ns_remove(steering, i);
drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
1779
struct mlx5_flow_steering *steering = dev->priv.steering;
drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
1785
err = mlx5_fs_vport_ingress_acl_ns_add(steering, i);
drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
1793
mlx5_fs_vport_ingress_acl_ns_remove(steering, i);
drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
1799
struct mlx5_flow_steering *steering = dev->priv.steering;
drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
1804
mlx5_fs_vport_ingress_acl_ns_remove(steering, i);
drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
1956
esw->dev->priv.steering->mode);
drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
3431
peer_ns = peer_esw->dev->priv.steering->fdb_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
3432
ns = esw->dev->priv.steering->fdb_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2225
struct mlx5_flow_steering *steering = get_steering(&ft->node);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2263
kmem_cache_free(steering->ftes_cache, fte);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2306
kmem_cache_free(steering->ftes_cache, fte);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2321
kmem_cache_free(steering->ftes_cache, fte);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2333
struct mlx5_flow_steering *steering = get_steering(&ft->node);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2428
kmem_cache_free(steering->ftes_cache, fte);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2667
struct mlx5_flow_steering *steering = dev->priv.steering;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2669
if (!steering || !steering->fdb_sub_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2672
return steering->fdb_sub_ns[n];
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2696
struct mlx5_flow_steering *steering = dev->priv.steering;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2702
if (!steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2707
if (steering->fdb_root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2708
return &steering->fdb_root_ns->ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2711
if (steering->port_sel_root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2712
return &steering->port_sel_root_ns->ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2715
if (steering->sniffer_rx_root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2716
return &steering->sniffer_rx_root_ns->ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2719
if (steering->sniffer_tx_root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2720
return &steering->sniffer_tx_root_ns->ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2723
root_ns = steering->fdb_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2729
root_ns = steering->egress_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2733
root_ns = steering->rdma_rx_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2737
root_ns = steering->rdma_rx_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2741
root_ns = steering->rdma_tx_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2745
root_ns = steering->rdma_rx_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2749
root_ns = steering->rdma_tx_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2753
root_ns = steering->rdma_rx_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2757
root_ns = steering->rdma_tx_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2761
root_ns = steering->rdma_rx_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2765
root_ns = steering->rdma_tx_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2770
root_ns = steering->root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2799
struct mlx5_flow_steering *steering = dev->priv.steering;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2802
if (!steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2807
vport_ns = xa_load(&steering->esw_egress_root_ns, vport_idx);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2813
vport_ns = xa_load(&steering->esw_ingress_root_ns, vport_idx);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2819
if (vport_idx >= steering->rdma_transport_rx_vports)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2821
if (steering->rdma_transport_rx_root_ns &&
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2822
steering->rdma_transport_rx_root_ns[vport_idx])
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2823
return &steering->rdma_transport_rx_root_ns[vport_idx]->ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2827
if (vport_idx >= steering->rdma_transport_tx_vports)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2830
if (steering->rdma_transport_tx_root_ns &&
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2831
steering->rdma_transport_tx_root_ns[vport_idx])
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2832
return &steering->rdma_transport_tx_root_ns[vport_idx]->ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2931
static int init_root_tree_recursive(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2937
int max_ft_level = MLX5_CAP_FLOWTABLE(steering->dev,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2948
!has_required_caps(steering->dev, &init_node->caps))
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2969
err = init_root_tree_recursive(steering, &init_node->children[i],
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2982
static int init_root_tree(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
2990
err = init_root_tree_recursive(steering, &init_node->children[i],
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3011
*create_root_ns(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3023
root_ns->dev = steering->dev;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3089
static int create_anchor_flow_table(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3095
ns = mlx5_get_flow_namespace(steering->dev, MLX5_FLOW_NAMESPACE_ANCHOR);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3105
mlx5_core_err(steering->dev, "Failed to create last anchor flow table");
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3111
static int init_root_ns(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3115
steering->root_ns = create_root_ns(steering, FS_FT_NIC_RX);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3116
if (!steering->root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3119
err = init_root_tree(steering, &root_fs, &steering->root_ns->ns.node);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3123
set_prio_attrs(steering->root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3124
err = create_anchor_flow_table(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3131
cleanup_root_ns(steering->root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3132
steering->root_ns = NULL;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3158
static int init_sniffer_tx_root_ns(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3162
steering->sniffer_tx_root_ns = create_root_ns(steering, FS_FT_SNIFFER_TX);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3163
if (!steering->sniffer_tx_root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3167
prio = fs_create_prio(&steering->sniffer_tx_root_ns->ns, 0, 1);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3171
static int init_sniffer_rx_root_ns(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3175
steering->sniffer_rx_root_ns = create_root_ns(steering, FS_FT_SNIFFER_RX);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3176
if (!steering->sniffer_rx_root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3180
prio = fs_create_prio(&steering->sniffer_rx_root_ns->ns, 0, 1);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3185
static int init_port_sel_root_ns(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3189
steering->port_sel_root_ns = create_root_ns(steering, FS_FT_PORT_SEL);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3190
if (!steering->port_sel_root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3194
prio = fs_create_prio(&steering->port_sel_root_ns->ns, 0,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3199
static int init_rdma_rx_root_ns(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3203
steering->rdma_rx_root_ns = create_root_ns(steering, FS_FT_RDMA_RX);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3204
if (!steering->rdma_rx_root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3207
err = init_root_tree(steering, &rdma_rx_root_fs,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3208
&steering->rdma_rx_root_ns->ns.node);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3212
set_prio_attrs(steering->rdma_rx_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3217
cleanup_root_ns(steering->rdma_rx_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3218
steering->rdma_rx_root_ns = NULL;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3222
static int init_rdma_tx_root_ns(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3226
steering->rdma_tx_root_ns = create_root_ns(steering, FS_FT_RDMA_TX);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3227
if (!steering->rdma_tx_root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3230
err = init_root_tree(steering, &rdma_tx_root_fs,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3231
&steering->rdma_tx_root_ns->ns.node);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3235
set_prio_attrs(steering->rdma_tx_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3240
cleanup_root_ns(steering->rdma_tx_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3241
steering->rdma_tx_root_ns = NULL;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3246
init_rdma_transport_rx_root_ns_one(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3254
steering->rdma_transport_rx_root_ns[vport_idx] =
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3255
create_root_ns(steering, FS_FT_RDMA_TRANSPORT_RX);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3256
if (!steering->rdma_transport_rx_root_ns[vport_idx])
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3259
root_ns = steering->rdma_transport_rx_root_ns[vport_idx];
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3277
init_rdma_transport_tx_root_ns_one(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3285
steering->rdma_transport_tx_root_ns[vport_idx] =
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3286
create_root_ns(steering, FS_FT_RDMA_TRANSPORT_TX);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3287
if (!steering->rdma_transport_tx_root_ns[vport_idx])
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3290
root_ns = steering->rdma_transport_tx_root_ns[vport_idx];
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3329
root = dev->priv.steering->rdma_transport_tx_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3330
total_vports = dev->priv.steering->rdma_transport_tx_vports;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3333
root = dev->priv.steering->rdma_transport_rx_root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3334
total_vports = dev->priv.steering->rdma_transport_rx_vports;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3363
static int init_rdma_transport_rx_root_ns(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3365
struct mlx5_core_dev *dev = steering->dev;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3373
steering->rdma_transport_rx_root_ns =
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3374
kzalloc_objs(*steering->rdma_transport_rx_root_ns,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3376
if (!steering->rdma_transport_rx_root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3380
err = init_rdma_transport_rx_root_ns_one(steering, i);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3384
steering->rdma_transport_rx_vports = total_vports;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3389
cleanup_root_ns(steering->rdma_transport_rx_root_ns[i]);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3390
kfree(steering->rdma_transport_rx_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3391
steering->rdma_transport_rx_root_ns = NULL;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3395
static int init_rdma_transport_tx_root_ns(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3397
struct mlx5_core_dev *dev = steering->dev;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3405
steering->rdma_transport_tx_root_ns =
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3406
kzalloc_objs(*steering->rdma_transport_tx_root_ns,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3408
if (!steering->rdma_transport_tx_root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3412
err = init_rdma_transport_tx_root_ns_one(steering, i);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3416
steering->rdma_transport_tx_vports = total_vports;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3421
cleanup_root_ns(steering->rdma_transport_tx_root_ns[i]);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3422
kfree(steering->rdma_transport_tx_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3423
steering->rdma_transport_tx_root_ns = NULL;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3427
static void cleanup_rdma_transport_roots_ns(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3431
if (steering->rdma_transport_rx_root_ns) {
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3432
for (i = 0; i < steering->rdma_transport_rx_vports; i++)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3433
cleanup_root_ns(steering->rdma_transport_rx_root_ns[i]);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3435
kfree(steering->rdma_transport_rx_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3436
steering->rdma_transport_rx_root_ns = NULL;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3439
if (steering->rdma_transport_tx_root_ns) {
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3440
for (i = 0; i < steering->rdma_transport_tx_vports; i++)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3441
cleanup_root_ns(steering->rdma_transport_tx_root_ns[i]);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3443
kfree(steering->rdma_transport_tx_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3444
steering->rdma_transport_tx_root_ns = NULL;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3453
static void store_fdb_sub_ns_prio_chain(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3458
while (steering->fdb_sub_ns[chain])
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3461
steering->fdb_sub_ns[chain] = ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3464
static int create_fdb_sub_ns_prio_chain(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3481
store_fdb_sub_ns_prio_chain(steering, ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3486
static int create_fdb_chains(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3496
maj_prio = fs_create_prio_chained(&steering->fdb_root_ns->ns,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3503
err = create_fdb_sub_ns_prio_chain(steering, maj_prio);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3511
static int create_fdb_fast_path(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3515
steering->fdb_sub_ns = kzalloc_objs(*steering->fdb_sub_ns,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3517
if (!steering->fdb_sub_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3520
err = create_fdb_chains(steering, FDB_TC_OFFLOAD, FDB_TC_MAX_CHAIN + 1);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3524
err = create_fdb_chains(steering, FDB_FT_OFFLOAD, 1);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3531
static int create_fdb_bypass(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3537
prio = fs_create_prio(&steering->fdb_root_ns->ns, FDB_BYPASS_PATH, 0);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3553
static void cleanup_fdb_root_ns(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3555
cleanup_root_ns(steering->fdb_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3556
steering->fdb_root_ns = NULL;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3557
kfree(steering->fdb_sub_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3558
steering->fdb_sub_ns = NULL;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3561
static int init_fdb_root_ns(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3566
steering->fdb_root_ns = create_root_ns(steering, FS_FT_FDB);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3567
if (!steering->fdb_root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3570
maj_prio = fs_create_prio(&steering->fdb_root_ns->ns, FDB_DROP_ROOT, 1);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3575
err = create_fdb_bypass(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3579
maj_prio = fs_create_prio(&steering->fdb_root_ns->ns, FDB_CRYPTO_INGRESS, 3);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3585
err = create_fdb_fast_path(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3589
maj_prio = fs_create_prio(&steering->fdb_root_ns->ns, FDB_TC_MISS, 1);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3595
maj_prio = fs_create_prio(&steering->fdb_root_ns->ns, FDB_BR_OFFLOAD, 4);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3601
maj_prio = fs_create_prio(&steering->fdb_root_ns->ns, FDB_SLOW_PATH, 1);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3607
maj_prio = fs_create_prio(&steering->fdb_root_ns->ns, FDB_CRYPTO_EGRESS, 3);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3618
maj_prio = fs_create_prio(&steering->fdb_root_ns->ns, FDB_PER_VPORT, 1);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3624
set_prio_attrs(steering->fdb_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3628
cleanup_fdb_root_ns(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3645
mlx5_fs_add_vport_acl_root_ns(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3655
if (WARN_ON(esw_acl_root_ns != &steering->esw_egress_root_ns &&
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3656
esw_acl_root_ns != &steering->esw_ingress_root_ns))
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3661
mlx5_core_err(steering->dev,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3674
vport_ns->root_ns = create_root_ns(steering, table_type);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3700
int mlx5_fs_vport_egress_acl_ns_add(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3703
return mlx5_fs_add_vport_acl_root_ns(steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3704
&steering->esw_egress_root_ns,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3708
int mlx5_fs_vport_ingress_acl_ns_add(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3711
return mlx5_fs_add_vport_acl_root_ns(steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3712
&steering->esw_ingress_root_ns,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3716
void mlx5_fs_vport_egress_acl_ns_remove(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3719
mlx5_fs_remove_vport_acl_root_ns(&steering->esw_egress_root_ns,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3723
void mlx5_fs_vport_ingress_acl_ns_remove(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3726
mlx5_fs_remove_vport_acl_root_ns(&steering->esw_ingress_root_ns,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3746
static int init_egress_root_ns(struct mlx5_flow_steering *steering)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3750
steering->egress_root_ns = create_root_ns(steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3752
if (!steering->egress_root_ns)
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3755
err = init_root_tree(steering, &egress_root_fs,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3756
&steering->egress_root_ns->ns.node);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3759
set_prio_attrs(steering->egress_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3762
cleanup_root_ns(steering->egress_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3763
steering->egress_root_ns = NULL;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3823
dev->priv.steering->mode = mode;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3834
switch (dev->priv.steering->mode) {
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3858
struct mlx5_flow_steering *steering = dev->priv.steering;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3860
WARN_ON(!xa_empty(&steering->esw_egress_root_ns));
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3861
WARN_ON(!xa_empty(&steering->esw_ingress_root_ns));
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3862
xa_destroy(&steering->esw_egress_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3863
xa_destroy(&steering->esw_ingress_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3865
cleanup_root_ns(steering->root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3866
cleanup_fdb_root_ns(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3867
cleanup_root_ns(steering->port_sel_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3868
cleanup_root_ns(steering->sniffer_rx_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3869
cleanup_root_ns(steering->sniffer_tx_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3870
cleanup_root_ns(steering->rdma_rx_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3871
cleanup_root_ns(steering->rdma_tx_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3872
cleanup_root_ns(steering->egress_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3873
cleanup_rdma_transport_roots_ns(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3881
struct mlx5_flow_steering *steering = dev->priv.steering;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3894
err = init_root_ns(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3901
err = init_fdb_root_ns(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3908
err = init_sniffer_rx_root_ns(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3914
err = init_sniffer_tx_root_ns(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3920
err = init_port_sel_root_ns(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3926
err = init_rdma_rx_root_ns(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3932
err = init_rdma_tx_root_ns(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3938
err = init_egress_root_ns(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3944
err = init_rdma_transport_rx_root_ns(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3950
err = init_rdma_transport_tx_root_ns(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3955
xa_init(&steering->esw_egress_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3956
xa_init(&steering->esw_ingress_root_ns);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3966
struct mlx5_flow_steering *steering = dev->priv.steering;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3968
kmem_cache_destroy(steering->ftes_cache);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3969
kmem_cache_destroy(steering->fgs_cache);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3970
kfree(steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3977
struct mlx5_flow_steering *steering;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3989
steering = kzalloc_obj(*steering);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3990
if (!steering) {
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3995
steering->dev = dev;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3996
dev->priv.steering = steering;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
3999
steering->mode = MLX5_FLOW_STEERING_MODE_SMFS;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
4001
steering->mode = MLX5_FLOW_STEERING_MODE_HMFS;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
4003
steering->mode = MLX5_FLOW_STEERING_MODE_DMFS;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
4006
steering->fgs_cache = kmem_cache_create(name,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
4010
steering->ftes_cache = kmem_cache_create(name, sizeof(struct fs_fte), 0,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
4012
if (!steering->ftes_cache || !steering->fgs_cache) {
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
4026
struct mlx5_flow_root_namespace *root = dev->priv.steering->root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
4065
struct mlx5_flow_root_namespace *root = dev->priv.steering->root_ns;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
544
return root->dev->priv.steering;
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
762
struct mlx5_flow_steering *steering = get_steering(node);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
776
kmem_cache_free(steering->ftes_cache, fte);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
799
struct mlx5_flow_steering *steering = get_steering(node);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
817
kmem_cache_free(steering->fgs_cache, fg);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
855
struct mlx5_flow_steering *steering = get_steering(&ft->node);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
858
fte = kmem_cache_zalloc(steering->ftes_cache, GFP_KERNEL);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
872
static void dealloc_flow_group(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
876
kmem_cache_free(steering->fgs_cache, fg);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
879
static struct mlx5_flow_group *alloc_flow_group(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
888
fg = kmem_cache_zalloc(steering->fgs_cache, GFP_KERNEL);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
894
kmem_cache_free(steering->fgs_cache, fg);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
916
struct mlx5_flow_steering *steering = get_steering(&ft->node);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
920
fg = alloc_flow_group(steering, match_criteria_enable, match_criteria,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
930
dealloc_flow_group(steering, fg);
drivers/net/ethernet/mellanox/mlx5/core/fs_core.h
364
int mlx5_fs_vport_egress_acl_ns_add(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.h
366
int mlx5_fs_vport_ingress_acl_ns_add(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.h
368
void mlx5_fs_vport_egress_acl_ns_remove(struct mlx5_flow_steering *steering,
drivers/net/ethernet/mellanox/mlx5/core/fs_core.h
370
void mlx5_fs_vport_ingress_acl_ns_remove(struct mlx5_flow_steering *steering,
include/linux/mlx4/device.h
1411
int mlx4_SET_PORT_VXLAN(struct mlx4_dev *dev, u8 port, u8 steering, int enable);
include/linux/mlx5/driver.h
613
struct mlx5_flow_steering *steering;