Commit 8ffd569a authored by Or Gerlitz's avatar Or Gerlitz Committed by Saeed Mahameed

net/mlx5e: Don't attempt to dereference the ppriv struct if not being eswitch manager

The check for cpu hit statistics was not returning immediate false for
any non vport rep netdev and hence we crashed (say on mlx5 probed VFs) if
user-space tool was calling into any possible netdev in the system.

Fix that by doing a proper check before dereferencing.

Fixes: 1d447a39 ('net/mlx5e: Extendable vport representor netdev private data')
Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
Reported-by: default avatarEli Cohen <eli@melloanox.com>
Reviewed-by: default avatarEli Cohen <eli@melloanox.com>
Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
parent ce397d21
......@@ -837,8 +837,12 @@ bool mlx5e_is_uplink_rep(struct mlx5e_priv *priv)
static bool mlx5e_is_vf_vport_rep(struct mlx5e_priv *priv)
{
struct mlx5e_rep_priv *rpriv = priv->ppriv;
struct mlx5_eswitch_rep *rep = rpriv->rep;
struct mlx5_eswitch_rep *rep;
if (!MLX5_CAP_GEN(priv->mdev, eswitch_flow_table))
return false;
rep = rpriv->rep;
if (rep && rep->vport != FDB_UPLINK_VPORT)
return true;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment