net/mlx5: HWS, Handle timeout draining the send queue for FW STEs

Handle a case in mlx5hws_send_stes_fw where
draining a queue fails with timeout.

Signed-off-by: Yevgeny Kliteynik <kliteyn@nvidia.com>
Reviewed-by: Erez Shitrit <erezsh@nvidia.com>
Signed-off-by: Tariq Toukan <tariqt@nvidia.com>
Link: https://patch.msgid.link/20260915111912.3926585-6-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Yevgeny Kliteynik 2026-09-15 14:19:11 +03:00 committed by Jakub Kicinski
parent 7bf7c4367d
commit 03d41926d0

View File

@ -1335,10 +1335,14 @@ void mlx5hws_send_stes_fw(struct mlx5hws_context *ctx,
pdn = ctx->pd_num;
/* Writing through FW can't HW fence, therefore we drain the queue */
if (send_attr->fence)
mlx5hws_send_queue_action(ctx,
queue_id,
MLX5HWS_SEND_QUEUE_ACTION_DRAIN_SYNC);
if (send_attr->fence) {
enum mlx5hws_send_queue_actions drain =
MLX5HWS_SEND_QUEUE_ACTION_DRAIN_SYNC;
ret = mlx5hws_send_queue_action(ctx, queue_id, drain);
if (ret)
goto fail_rule;
}
if (ste_attr->rtc_1) {
send_attr->id = ste_attr->rtc_1;