Skip to content

Commit

Permalink
net/mlx5e: IPoIB, Fix child PKEY interface stats on rx path
Browse files Browse the repository at this point in the history
[ Upstream commit b5e2393 ]

The current code always does the accounting using the
stats from the parent interface (linked in the rq). This
doesn't work when there are child interfaces configured.

Fix this behavior by always using the stats from the child
interface priv. This will also work for parent only
interfaces: the child (netdev) and parent netdev (rq->netdev)
will point to the same thing.

Fixes: be98737 ("net/mlx5e: Use dynamic per-channel allocations in stats")
Signed-off-by: Dragos Tatulea <dtatulea@nvidia.com>
Reviewed-by: Tariq Toukan <tariqt@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
  • Loading branch information
dtatulea authored and gregkh committed Jan 18, 2023
1 parent 5844a46 commit 0fa15a1
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/net/ethernet/mellanox/mlx5/core/en_rx.c
Expand Up @@ -2300,7 +2300,7 @@ static inline void mlx5i_complete_rx_cqe(struct mlx5e_rq *rq,

priv = mlx5i_epriv(netdev);
tstamp = &priv->tstamp;
stats = rq->stats;
stats = &priv->channel_stats[rq->ix]->rq;

flags_rqpn = be32_to_cpu(cqe->flags_rqpn);
g = (flags_rqpn >> 28) & 3;
Expand Down

0 comments on commit 0fa15a1

Please sign in to comment.