net/mlx5e: Fix ICOSQ recovery flow with Striding RQ
In striding RQ mode, the buffers of an RX WQE are first prepared and posted to the HW using a UMR WQEs via the ICOSQ. We maintain the state of these in-progress WQEs in the RQ SW struct. In the flow of ICOSQ recovery, the corresponding RQ is not in error state, hence: - The buffers of the in-progress WQEs must be released and the RQ metadata should reflect it. - Existing RX WQEs in the RQ should not be affected. For this, wrap the dealloc of the in-progress WQEs in a function, and use it in the ICOSQ recovery flow instead of mlx5e_free_rx_descs(). Fixes: be5323c8 ("net/mlx5e: Report and recover from CQE error on ICOSQ") Signed-off-by:Aya Levin <ayal@mellanox.com> Reviewed-by:
Tariq Toukan <tariqt@mellanox.com> Signed-off-by:
Saeed Mahameed <saeedm@mellanox.com>
parent
39369fd5
No related branches found
No related tags found
Showing
- drivers/net/ethernet/mellanox/mlx5/core/en.h 1 addition, 0 deletionsdrivers/net/ethernet/mellanox/mlx5/core/en.h
- drivers/net/ethernet/mellanox/mlx5/core/en/reporter_rx.c 1 addition, 1 deletiondrivers/net/ethernet/mellanox/mlx5/core/en/reporter_rx.c
- drivers/net/ethernet/mellanox/mlx5/core/en_main.c 24 additions, 7 deletionsdrivers/net/ethernet/mellanox/mlx5/core/en_main.c
Loading
Please register or sign in to comment