Loading drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c +0 −5 Original line number Diff line number Diff line Loading @@ -43,11 +43,6 @@ #include "ecpf.h" #include "lib/eq.h" enum { FDB_FAST_PATH = 0, FDB_SLOW_PATH }; /* There are two match-all miss flows, one for unicast dst mac and * one for multicast. */ Loading drivers/net/ethernet/mellanox/mlx5/core/fs_core.c +10 −2 Original line number Diff line number Diff line Loading @@ -2516,8 +2516,16 @@ static int init_fdb_root_ns(struct mlx5_flow_steering *steering) if (!steering->fdb_sub_ns) return -ENOMEM; maj_prio = fs_create_prio(&steering->fdb_root_ns->ns, FDB_BYPASS_PATH, 1); if (IS_ERR(maj_prio)) { err = PTR_ERR(maj_prio); goto out_err; } levels = 2 * FDB_MAX_PRIO * (FDB_MAX_CHAIN + 1); maj_prio = fs_create_prio_chained(&steering->fdb_root_ns->ns, 0, maj_prio = fs_create_prio_chained(&steering->fdb_root_ns->ns, FDB_FAST_PATH, levels); if (IS_ERR(maj_prio)) { err = PTR_ERR(maj_prio); Loading @@ -2542,7 +2550,7 @@ static int init_fdb_root_ns(struct mlx5_flow_steering *steering) steering->fdb_sub_ns[chain] = ns; } maj_prio = fs_create_prio(&steering->fdb_root_ns->ns, 1, 1); maj_prio = fs_create_prio(&steering->fdb_root_ns->ns, FDB_SLOW_PATH, 1); if (IS_ERR(maj_prio)) { err = PTR_ERR(maj_prio); goto out_err; Loading include/linux/mlx5/fs.h +6 −0 Original line number Diff line number Diff line Loading @@ -75,6 +75,12 @@ enum mlx5_flow_namespace_type { MLX5_FLOW_NAMESPACE_EGRESS, }; enum { FDB_BYPASS_PATH, FDB_FAST_PATH, FDB_SLOW_PATH, }; struct mlx5_flow_table; struct mlx5_flow_group; struct mlx5_flow_namespace; Loading Loading
drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c +0 −5 Original line number Diff line number Diff line Loading @@ -43,11 +43,6 @@ #include "ecpf.h" #include "lib/eq.h" enum { FDB_FAST_PATH = 0, FDB_SLOW_PATH }; /* There are two match-all miss flows, one for unicast dst mac and * one for multicast. */ Loading
drivers/net/ethernet/mellanox/mlx5/core/fs_core.c +10 −2 Original line number Diff line number Diff line Loading @@ -2516,8 +2516,16 @@ static int init_fdb_root_ns(struct mlx5_flow_steering *steering) if (!steering->fdb_sub_ns) return -ENOMEM; maj_prio = fs_create_prio(&steering->fdb_root_ns->ns, FDB_BYPASS_PATH, 1); if (IS_ERR(maj_prio)) { err = PTR_ERR(maj_prio); goto out_err; } levels = 2 * FDB_MAX_PRIO * (FDB_MAX_CHAIN + 1); maj_prio = fs_create_prio_chained(&steering->fdb_root_ns->ns, 0, maj_prio = fs_create_prio_chained(&steering->fdb_root_ns->ns, FDB_FAST_PATH, levels); if (IS_ERR(maj_prio)) { err = PTR_ERR(maj_prio); Loading @@ -2542,7 +2550,7 @@ static int init_fdb_root_ns(struct mlx5_flow_steering *steering) steering->fdb_sub_ns[chain] = ns; } maj_prio = fs_create_prio(&steering->fdb_root_ns->ns, 1, 1); maj_prio = fs_create_prio(&steering->fdb_root_ns->ns, FDB_SLOW_PATH, 1); if (IS_ERR(maj_prio)) { err = PTR_ERR(maj_prio); goto out_err; Loading
include/linux/mlx5/fs.h +6 −0 Original line number Diff line number Diff line Loading @@ -75,6 +75,12 @@ enum mlx5_flow_namespace_type { MLX5_FLOW_NAMESPACE_EGRESS, }; enum { FDB_BYPASS_PATH, FDB_FAST_PATH, FDB_SLOW_PATH, }; struct mlx5_flow_table; struct mlx5_flow_group; struct mlx5_flow_namespace; Loading