net/mlx5: fix multi-segment inline for the first segments
authorViacheslav Ovsiienko <viacheslavo@nvidia.com>
Tue, 22 Jun 2021 16:40:49 +0000 (19:40 +0300)
committerRaslan Darawsheh <rasland@nvidia.com>
Thu, 8 Jul 2021 20:09:20 +0000 (22:09 +0200)
commitec837ad0fc7c6df4912cc2706b9cd54b225f4a34
treeab927418892c675314a9d15c0d70c61c0a4182f7
parent9f4a192328981074770f263d504807539239e211
net/mlx5: fix multi-segment inline for the first segments

Before 19.08 release the Tx burst routines of mlx5 PMD
provided data inline for the first short segments of the
multi-segment packets. In the release 19.08 mlx5 Tx datapath
was refactored and this behavior was broken, affecting the
performance.

For example, the T-Rex traffic generator might use small
leading segments to handle packet headers and performance
degradation was noticed.

If the first segments of the multi-segment packet are short
and the overall length is below the inline threshold it
should be inline into the WQE to fix the performance.

Fixes: 18a1c20044c0 ("net/mlx5: implement Tx burst template")
Cc: stable@dpdk.org
Signed-off-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
drivers/net/mlx5/mlx5_tx.h