Merge branch 'net-mlx5-steering-misc-enhancements'

Tariq Toukan says:

====================
net/mlx5: Steering misc enhancements

This small series by Yevgeny contains a few steering enhancements /
cleanups.
====================

Link: https://patch.msgid.link/20260507173443.320465-1-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Jakub Kicinski 2026-05-10 10:22:27 -07:00
commit 6375109950
3 changed files with 15 additions and 1 deletions

View File

@ -422,6 +422,18 @@ int mlx5hws_bwc_queue_poll(struct mlx5hws_context *ctx,
if (!got_comp && !drain)
return 0;
if (unlikely(ctx->mdev->state == MLX5_DEVICE_STATE_INTERNAL_ERROR)) {
/* If the device is down for any reason (e.g. FLR), the HW will
* no longer generate completions.
* Note that ETIMEDOUT is returned here because the BWC layer
* already has a special handling for timeouts - it breaks the
* rehash / resize / shrink loops to avoid chain of timeouts.
*/
mlx5_core_warn_once(ctx->mdev,
"BWC poll: device is down, polling for completion aborted\n");
return -ETIMEDOUT;
}
queue_full = mlx5hws_send_engine_full(&ctx->send_queue[queue_id]);
while (queue_full || ((got_comp || drain) && *pending_rules)) {
ret = mlx5hws_send_queue_poll(ctx, queue_id, comp, burst_th);

View File

@ -282,6 +282,9 @@ int mlx5hws_table_destroy(struct mlx5hws_table *tbl)
goto unlock_err;
}
if (tbl->default_miss.miss_tbl)
list_del_init(&tbl->default_miss.next);
list_del_init(&tbl->tbl_list_node);
mutex_unlock(&ctx->ctrl_lock);

View File

@ -986,7 +986,6 @@ struct mlx5dr_matcher_rx_tx {
[DR_RULE_MAX_STES];
u8 num_of_builders;
u8 num_of_builders_arr[DR_RULE_IPV_MAX][DR_RULE_IPV_MAX];
u64 default_icm_addr;
struct mlx5dr_table_rx_tx *nic_tbl;
u32 prio;
struct list_head list_node;