Hi, David
Yes, thank you for the patch, acked.
The "txq_inline_min" value was not set for ConnectX-5 to 0 as default.
At the TX queue setup time the "txq_inline_min" is checked against
MLX5_ARG_UNSET
and default value 0 is set:
txq_set_params()
...
inlen_mode = (config->txq_inline_min == MLX5_ARG_UNSET) ?
0 : (unsigned int)config->txq_inline_min;
So, there should be no negative backwards. Did you observe any?
WBR, Slava
> -----Original Message-----
> From: David Christensen <[email protected]>
> Sent: Thursday, August 1, 2019 1:41
> To: Slava Ovsiienko <[email protected]>
> Cc: [email protected]; David Christensen <[email protected]>
> Subject: [PATCH] net/mlx5: txq_inline_min not set for ConnectX-5 adapters
>
> The function mlx5_set_min_inline() includes a switch() that checks various
> PCI device IDs in order to set the txq_inline_min value. No value is set when
> the PCI device ID matches the ConnectX-5 adapters, resulting in an assert()
> failure later in the function mlx5_set_txlimit_params().
>
> This error was encountered on an IBM Power 9 system running RHEL 7.6 w/o
> Mellanox OFED installed.
>
> Fixes: 38b4b397a57d ("net/mlx5: add Tx configuration and setup")
> Cc: [email protected]
>
> Signed-off-by: David Christensen <[email protected]>
Acked-by: Viacheslav Ovsiienko <[email protected]>
> ---
> drivers/net/mlx5/mlx5.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c index
> 3a345c7..0f61dd5 100644
> --- a/drivers/net/mlx5/mlx5.c
> +++ b/drivers/net/mlx5/mlx5.c
> @@ -1341,6 +1341,7 @@ struct mlx5_dev_spawn_data {
> * and PFC control may be broken, so disable feature.
> */
> config->hw_vlan_insert = 0;
> + config->txq_inline_min = MLX5_INLINE_HSIZE_NONE;
> break;
> default:
> config->txq_inline_min = MLX5_INLINE_HSIZE_NONE;
> --
> 1.8.3.1