Commit 2a0a935f authored by Shay Drory's avatar Shay Drory Committed by Saeed Mahameed

net/mlx5: Collect command failures data only for known commands

DEVX can issue a general command, which is not used by mlx5 driver.
In case such command is failed, mlx5 is trying to collect the failure
data, However, mlx5 doesn't create a storage for this command, since
mlx5 doesn't use it. This lead to array-index-out-of-bounds error.

Fix it by checking whether the command is known before collecting the
failure data.

Fixes: 34f46ae0 ("net/mlx5: Add command failures data to debugfs")
Signed-off-by: default avatarShay Drory <shayd@nvidia.com>
Signed-off-by: default avatarSaeed Mahameed <saeedm@nvidia.com>
parent 18c40a1c
...@@ -1920,9 +1920,10 @@ static void mlx5_cmd_err_trace(struct mlx5_core_dev *dev, u16 opcode, u16 op_mod ...@@ -1920,9 +1920,10 @@ static void mlx5_cmd_err_trace(struct mlx5_core_dev *dev, u16 opcode, u16 op_mod
static void cmd_status_log(struct mlx5_core_dev *dev, u16 opcode, u8 status, static void cmd_status_log(struct mlx5_core_dev *dev, u16 opcode, u8 status,
u32 syndrome, int err) u32 syndrome, int err)
{ {
const char *namep = mlx5_command_str(opcode);
struct mlx5_cmd_stats *stats; struct mlx5_cmd_stats *stats;
if (!err) if (!err || !(strcmp(namep, "unknown command opcode")))
return; return;
stats = &dev->cmd.stats[opcode]; stats = &dev->cmd.stats[opcode];
......
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