numam-dpdk/drivers/net/mlx5
Shahaf Shuler 57c0e2494c net/mlx5: fix packet inline on Tx queue wraparound
Inlining a packet to WQE that cross the WQ wraparound, i.e. the WQE
starts on the end of the ring and ends on the beginning, is not
supported and blocked by the data path logic.

However, in case of TSO, an extra inline header is required before
inlining. This inline header is not taken into account when checking if
there is enough room left for the required inline size.
On some corner cases were
(ring_tailroom - inline header) < inline size < ring_tailroom ,
this can lead to WQE being written outsize of the ring buffer.

Fixing it by always assuming the worse case that inline of packet will
require the inline header.

Fixes: 3f13f8c23a ("net/mlx5: support hardware TSO")
Cc: stable@dpdk.org

Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
2019-03-20 18:15:42 +01:00
..
Makefile net/mlx5: fix deprecated library API for Rx padding 2019-01-18 09:47:26 +01:00
meson.build build: improve dependency handling 2019-02-27 12:13:54 +01:00
mlx5_defs.h net/mlx5: make vectorized Tx threshold configurable 2018-11-05 15:01:25 +01:00
mlx5_devx_cmds.c net/mlx5: support flow counters using devx 2019-01-14 17:44:29 +01:00
mlx5_ethdev.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_flow_dv.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_flow_tcf.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_flow_verbs.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_flow.c net/mlx5: fix flow priorities probing error path 2019-03-08 17:52:22 +01:00
mlx5_flow.h net/mlx5: validate TOS and TTL on E-Switch 2019-01-14 17:44:30 +01:00
mlx5_glue.c net/mlx5: add devx functions to glue 2019-01-14 17:44:29 +01:00
mlx5_glue.h net/mlx5: add devx functions to glue 2019-01-14 17:44:29 +01:00
mlx5_mac.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_mr.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_mr.h net/mlx5: clean-up developer logs 2018-07-03 01:35:57 +02:00
mlx5_nl.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_prm.h net/mlx5: support flow counters using devx 2019-01-14 17:44:29 +01:00
mlx5_rss.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_rxmode.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_rxq.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_rxtx_vec_neon.h net/mlx5: fix Tx metadata for multi-segment packet 2019-02-13 12:55:38 +01:00
mlx5_rxtx_vec_sse.h net/mlx5: fix Tx metadata for multi-segment packet 2019-02-13 12:55:38 +01:00
mlx5_rxtx_vec.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_rxtx_vec.h net/mlx5: fix instruction hotspot on replenishing Rx buffer 2019-01-15 02:40:40 +01:00
mlx5_rxtx.c net/mlx5: fix packet inline on Tx queue wraparound 2019-03-20 18:15:42 +01:00
mlx5_rxtx.h net/mlx5: fix sync when handling Tx completions 2019-03-08 17:52:22 +01:00
mlx5_socket.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_stats.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_trigger.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_txq.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_utils.h net/mlx5: fix build on PPC64 2018-11-14 00:35:53 +01:00
mlx5_vlan.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5.c net/mlx5: call generic strlcpy 2019-03-08 17:52:22 +01:00
mlx5.h net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
rte_pmd_mlx5_version.map mlx5: introduce new driver for Mellanox ConnectX-4 adapters 2015-10-30 22:03:42 +01:00