Skip to content

Commit 47bf2e8

Browse files
shayshyikuba-moo
authored andcommitted
net/mlx5: Fix multiport device check over light SFs
Driver is using num_vhca_ports capability to distinguish between multiport master device and multiport slave device. num_vhca_ports is a capability the driver sets according to the MAX num_vhca_ports capability reported by FW. On the other hand, light SFs doesn't set the above capbility. This leads to wrong results whenever light SFs is checking whether he is a multiport master or slave. Therefore, use the MAX capability to distinguish between master and slave devices. Fixes: e71383f ("net/mlx5: Light probe local SFs") Signed-off-by: Shay Drory <shayd@nvidia.com> Reviewed-by: Moshe Shemesh <moshe@nvidia.com> Signed-off-by: Tariq Toukan <tariqt@nvidia.com> Reviewed-by: Jacob Keller <Jacob.e.keller@intel.com> Link: https://patch.msgid.link/20260218072904.1764634-2-tariqt@nvidia.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
1 parent e6834a4 commit 47bf2e8

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

include/linux/mlx5/driver.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1282,12 +1282,12 @@ static inline bool mlx5_rl_is_supported(struct mlx5_core_dev *dev)
12821282
static inline int mlx5_core_is_mp_slave(struct mlx5_core_dev *dev)
12831283
{
12841284
return MLX5_CAP_GEN(dev, affiliate_nic_vport_criteria) &&
1285-
MLX5_CAP_GEN(dev, num_vhca_ports) <= 1;
1285+
MLX5_CAP_GEN_MAX(dev, num_vhca_ports) <= 1;
12861286
}
12871287

12881288
static inline int mlx5_core_is_mp_master(struct mlx5_core_dev *dev)
12891289
{
1290-
return MLX5_CAP_GEN(dev, num_vhca_ports) > 1;
1290+
return MLX5_CAP_GEN_MAX(dev, num_vhca_ports) > 1;
12911291
}
12921292

12931293
static inline int mlx5_core_mp_enabled(struct mlx5_core_dev *dev)

0 commit comments

Comments
 (0)