common/mlx5: remove unneeded field when modify RQ table
Checks
Commit Message
The attribute "rqt_max_size" of the RQT(RQ table) context is only
needed by when creating a new one. When modifying an old one, there
is no need to set this attribute.
The firmware usually ignored this unneeded field. When enabling some
extra check, an error will be returned to prevent the code from
continuing to run.
In the meanwhile, this field will always be set to the maximal one
fetched from the capability without any change. Removing the value
set and leave it to 0 will help to solve the potential failure.
Fixes: e1da60a8a6e9 ("common/mlx5: add DevX command to modify RQT")
Cc: matan@nvidia.com
Signed-off-by: Bing Zhao <bingz@nvidia.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
---
drivers/common/mlx5/mlx5_devx_cmds.c | 1 -
1 file changed, 1 deletion(-)
Comments
Rerunning the CI Test for Broadcom Performance, which appears to be a
false failure.
Hi Patrick,
It seems to be so. The patch is only for mlx5 slow path configuration. There is no reason that such change will impact the BRCM NIC performance.
Thanks.
BR. Bing
> -----Original Message-----
> From: Patrick Robb <probb@iol.unh.edu>
> Sent: Thursday, July 18, 2024 4:58 AM
> To: Bing Zhao <bingz@nvidia.com>
> Cc: Slava Ovsiienko <viacheslavo@nvidia.com>; dev@dpdk.org; Raslan
> Darawsheh <rasland@nvidia.com>; Ori Kam <orika@nvidia.com>; Dariusz
> Sosnowski <dsosnowski@nvidia.com>; Suanming Mou <suanmingm@nvidia.com>;
> Matan Azrad <matan@nvidia.com>
> Subject: Re: [PATCH] common/mlx5: remove unneeded field when modify RQ
> table
>
> External email: Use caution opening links or attachments
>
>
> Rerunning the CI Test for Broadcom Performance, which appears to be a
> false failure.
Hi,
From: Bing Zhao <bingz@nvidia.com>
Sent: Wednesday, July 17, 2024 7:37 PM
To: Slava Ovsiienko; dev@dpdk.org; Raslan Darawsheh
Cc: Ori Kam; Dariusz Sosnowski; Suanming Mou; Matan Azrad
Subject: [PATCH] common/mlx5: remove unneeded field when modify RQ table
The attribute "rqt_max_size" of the RQT(RQ table) context is only
needed by when creating a new one. When modifying an old one, there
is no need to set this attribute.
The firmware usually ignored this unneeded field. When enabling some
extra check, an error will be returned to prevent the code from
continuing to run.
In the meanwhile, this field will always be set to the maximal one
fetched from the capability without any change. Removing the value
set and leave it to 0 will help to solve the potential failure.
Fixes: e1da60a8a6e9 ("common/mlx5: add DevX command to modify RQT")
Cc: matan@nvidia.com
Signed-off-by: Bing Zhao <bingz@nvidia.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
Patch applied to next-net-mlx,
Kindest regards,
Raslan Darawsheh
@@ -1914,7 +1914,6 @@ mlx5_devx_cmd_modify_rqt(struct mlx5_devx_obj *rqt,
MLX5_SET64(modify_rqt_in, in, modify_bitmask, 0x1);
rqt_ctx = MLX5_ADDR_OF(modify_rqt_in, in, rqt_context);
MLX5_SET(rqtc, rqt_ctx, list_q_type, rqt_attr->rq_type);
- MLX5_SET(rqtc, rqt_ctx, rqt_max_size, rqt_attr->rqt_max_size);
MLX5_SET(rqtc, rqt_ctx, rqt_actual_size, rqt_attr->rqt_actual_size);
for (i = 0; i < rqt_attr->rqt_actual_size; i++)
MLX5_SET(rqtc, rqt_ctx, rq_num[i], rqt_attr->rq_list[i]);