net/mlx5: fix assert for Tx completion queue count
authorYongseok Koh <yskoh@mellanox.com>
Mon, 23 Jul 2018 18:00:10 +0000 (11:00 -0700)
committerThomas Monjalon <thomas@monjalon.net>
Thu, 26 Jul 2018 12:05:52 +0000 (14:05 +0200)
commitc618e7e82bfed1da91f1dbabdd06e0a39fdb7b78
tree5ce3eb6f9137e380138a477267fd982b60adc0fc
parentf872b4b99d2cb55933ff2172f5f6e346545bc27b
net/mlx5: fix assert for Tx completion queue count

There should be at least one Tx CQE remained if Tx WQ and txq->elts[] have
available slots to send a packet because the size of Tx CQ is exactly
calculated from the size of other resources. As it is guaranteed, it is
checked by an assertion.

max_elts is checked after the assertion for Tx CQ. If no slot is available
in txq->elts[], the assertion would be wrong.

Fixes: 2eefbec531c7 ("net/mlx5: add missing sanity checks for Tx completion queue")
Fixes: 6ce84bd88919 ("net/mlx5: add enhanced multi-packet send for ConnectX-5")
Cc: stable@dpdk.org
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Xueming Li <xuemingl@mellanox.com>
drivers/net/mlx5/mlx5_rxtx.c
drivers/net/mlx5/mlx5_rxtx_vec_neon.h
drivers/net/mlx5/mlx5_rxtx_vec_sse.h