Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 26 Jul 2021 15:19:40 GMT
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: 40fa8f462b33 - stable/13 - mlx5en: Fix for IPv6 VxLAN checksum offload.
Message-ID:  <202107261519.16QFJenm025686@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch stable/13 has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=40fa8f462b33d4f30693a36ce7ba3ddd2b128143

commit 40fa8f462b33d4f30693a36ce7ba3ddd2b128143
Author:     Hans Petter Selasky <hselasky@FreeBSD.org>
AuthorDate: 2021-06-16 13:01:25 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2021-07-26 13:51:11 +0000

    mlx5en: Fix for IPv6 VxLAN checksum offload.
    
    (cherry picked from commit 1918b253d36a82ccc171df40d9abb75923f1ece5)
---
 sys/dev/mlx5/mlx5_en/mlx5_en_tx.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_tx.c b/sys/dev/mlx5/mlx5_en/mlx5_en_tx.c
index 6bc0a91ca8ef..437910ee7964 100644
--- a/sys/dev/mlx5/mlx5_en/mlx5_en_tx.c
+++ b/sys/dev/mlx5/mlx5_en/mlx5_en_tx.c
@@ -423,7 +423,7 @@ mlx5e_get_vxlan_header_size(const struct mbuf *mb, struct mlx5e_tx_wqe *wqe,
 		if (unlikely(ip_type != IPPROTO_UDP))
 			return (0);
 		wqe->eth.swp_outer_l3_offset = eth_hdr_len / 2;
-		wqe->eth.cs_flags = MLX5_ETH_WQE_L3_CSUM | MLX5_ETH_WQE_L4_CSUM;
+		wqe->eth.cs_flags = MLX5_ETH_WQE_L4_CSUM;
 		eth_hdr_len += sizeof(*ip6);
 		udp = mlx5e_parse_mbuf_chain(&mb, &offset, eth_hdr_len,
 		    sizeof(*udp));
@@ -483,7 +483,6 @@ mlx5e_get_vxlan_header_size(const struct mbuf *mb, struct mlx5e_tx_wqe *wqe,
 		if (unlikely(ip6 == NULL))
 			return (0);
 		wqe->eth.swp_inner_l3_offset = eth_hdr_len / 2;
-		wqe->eth.cs_flags |= MLX5_ETH_WQE_L3_INNER_CSUM;
 		wqe->eth.swp_flags |= MLX5_ETH_WQE_SWP_INNER_L3_TYPE;
 		ip_type = ip6->ip6_nxt;
 		eth_hdr_len += sizeof(*ip6);
@@ -833,7 +832,8 @@ top:
 				uint8_t cs_mask;
 
 				if (mb->m_pkthdr.csum_flags &
-				    (CSUM_INNER_IP_TCP | CSUM_INNER_IP_UDP)) {
+				    (CSUM_INNER_IP_TCP | CSUM_INNER_IP_UDP |
+				     CSUM_INNER_IP6_TCP | CSUM_INNER_IP6_UDP)) {
 					cs_mask =
 					    MLX5_ETH_WQE_L3_INNER_CSUM |
 					    MLX5_ETH_WQE_L4_INNER_CSUM |



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202107261519.16QFJenm025686>