numam-dpdk/drivers/net/mlx5
Dong Zhou eb10fe7fb1 net/mlx5: fix LRO checksum
The TCP checksum includes IPV4 pseudo-header checksum and L3
payload checksum which include TCP header and TCP payload.
When mlx5 LRO is enabled, HW will calculate the TCP payload
checksum, PMD need complete the IPV4 pseudo-header checksum
and the TCP header checksum.

The mlx5_lro_update_tcp_hdr function completes the TCP header
checksum, but this function using lower 4 bits of data-offset
field in TCP header to get the whole TCP header length, this
will cause TCP header checksum wrong calculation.

Update the code using higher 4 bits of data-offset field
instead of lower 4 bits.

Fixes: e4c2a16eb1 ("net/mlx5: handle LRO packets in Rx queue")
Cc: stable@dpdk.org

Signed-off-by: Dong Zhou <dongz@mellanox.com>
Acked-by: Matan Azrad <matan@mellanox.com>
2020-06-16 19:21:07 +02:00
..
linux net/mlx5: refactor statistics 2020-06-16 19:21:07 +02:00
Makefile net/mlx5: move Linux-specific functions 2020-06-16 19:21:07 +02:00
meson.build net/mlx5: move socket files in Linux directory 2020-06-16 19:21:07 +02:00
mlx5_defs.h net/mlx5: add device parameter for MPRQ stride size 2020-04-21 13:57:08 +02:00
mlx5_ethdev.c net/mlx5: move Linux-specific functions 2020-06-16 19:21:07 +02:00
mlx5_flow_dv.c net/mlx5: rename ib in names 2020-06-16 19:21:07 +02:00
mlx5_flow_meter.c net/mlx5: fix typos in meter error messages 2020-06-16 19:21:07 +02:00
mlx5_flow_verbs.c net/mlx5: rename ib in names 2020-06-16 19:21:07 +02:00
mlx5_flow.c net/mlx5: refactor device operations for Linux 2020-06-16 19:21:07 +02:00
mlx5_flow.h net/mlx5: fix flow counter container resize 2020-05-18 20:35:57 +02:00
mlx5_mac.c common/mlx5: improve assert control 2020-02-05 09:51:21 +01:00
mlx5_mp.c net/mlx5: add Linux-specific file with getter functions 2020-06-16 19:21:07 +02:00
mlx5_mr.c net/mlx5: rename Verbs shared object 2020-06-16 19:21:07 +02:00
mlx5_mr.h common/mlx5: refactor memory management 2020-04-21 13:57:08 +02:00
mlx5_rss.c common/mlx5: improve assert control 2020-02-05 09:51:21 +01:00
mlx5_rxmode.c net/mlx5: reduce Netlink commands dependencies 2020-02-05 09:51:20 +01:00
mlx5_rxq.c net/mlx5: fix descriptors number adjustment 2020-06-16 19:21:07 +02:00
mlx5_rxtx_vec_altivec.h net/mlx5: fix vectorized Rx burst termination 2020-06-03 17:20:32 +02:00
mlx5_rxtx_vec_neon.h net/mlx5: fix vectorized Rx burst termination 2020-06-03 17:20:32 +02:00
mlx5_rxtx_vec_sse.h net/mlx5: fix vectorized Rx burst termination 2020-06-03 17:20:32 +02:00
mlx5_rxtx_vec.c net/mlx5: fix vectorized Rx burst termination 2020-06-03 17:20:32 +02:00
mlx5_rxtx_vec.h common/mlx5: refactor memory management 2020-04-21 13:57:08 +02:00
mlx5_rxtx.c net/mlx5: fix LRO checksum 2020-06-16 19:21:07 +02:00
mlx5_rxtx.h net/mlx5: fix secondary process resources release 2020-06-02 16:06:24 +02:00
mlx5_stats.c net/mlx5: refactor statistics 2020-06-16 19:21:07 +02:00
mlx5_trigger.c net/mlx5: refactor statistics 2020-06-16 19:21:07 +02:00
mlx5_txq.c net/mlx5: fix descriptors number adjustment 2020-06-16 19:21:07 +02:00
mlx5_utils.c net/mlx5: fix indexed pool bitmap initialization 2020-05-05 15:54:26 +02:00
mlx5_utils.h net/mlx5: fix indexed pool bitmap initialization 2020-05-05 15:54:26 +02:00
mlx5_vlan.c common/mlx5: improve assert control 2020-02-05 09:51:21 +01:00
mlx5.c net/mlx5: refactor device operations for Linux 2020-06-16 19:21:07 +02:00
mlx5.h net/mlx5: refactor statistics 2020-06-16 19:21:07 +02:00
rte_pmd_mlx5_version.map net/mlx5: support fine grain dynamic flag 2020-02-05 09:51:20 +01:00
rte_pmd_mlx5.h net/mlx5: support fine grain dynamic flag 2020-02-05 09:51:20 +01:00