From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id 111791B50A for ; Fri, 30 Nov 2018 00:15:46 +0100 (CET) Received: from Internal Mail-Server by MTLPINE1 (envelope-from yskoh@mellanox.com) with ESMTPS (AES256-SHA encrypted); 30 Nov 2018 01:21:34 +0200 Received: from scfae-sc-2.mti.labs.mlnx (scfae-sc-2.mti.labs.mlnx [10.101.0.96]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id wATNCW8o032075; Fri, 30 Nov 2018 01:15:39 +0200 From: Yongseok Koh To: Raslan Darawsheh Cc: Ophir Munk , Ferruh Yigit , dpdk stable Date: Thu, 29 Nov 2018 15:11:44 -0800 Message-Id: <20181129231202.30436-110-yskoh@mellanox.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20181129231202.30436-1-yskoh@mellanox.com> References: <20181129231202.30436-1-yskoh@mellanox.com> Subject: [dpdk-stable] patch 'app/testpmd: fix L4 length for UDP checksum' has been queued to LTS release 17.11.5 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 29 Nov 2018 23:15:46 -0000 Hi, FYI, your patch has been queued to LTS release 17.11.5 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 12/01/18. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. If the code is different (ie: not only metadata diffs), due for example to a change in context or macro names, please double check it. Thanks. Yongseok --- >>From f081f8c65088f7fab4b1071230ca723bc817c980 Mon Sep 17 00:00:00 2001 From: Raslan Darawsheh Date: Sun, 11 Nov 2018 15:31:37 +0000 Subject: [PATCH] app/testpmd: fix L4 length for UDP checksum [ upstream commit 2b5651c026d8d1a687a8f7a210b1b8f13f906911 ] testpmd only sets the L4 len in case of TCP packets. some PMD's like tap rely on mbuf meta data to calculate csum This will set the L4 len for UDP packets same as TCP Fixes: 160c3dc9458c ("app/testpmd: introduce IP parsing functions in csum fwd engine") Signed-off-by: Raslan Darawsheh Signed-off-by: Ophir Munk Reviewed-by: Ferruh Yigit --- app/test-pmd/csumonly.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/app/test-pmd/csumonly.c b/app/test-pmd/csumonly.c index aa29f5fc1..4800e74e5 100644 --- a/app/test-pmd/csumonly.c +++ b/app/test-pmd/csumonly.c @@ -135,7 +135,9 @@ parse_ipv4(struct ipv4_hdr *ipv4_hdr, struct testpmd_offload_info *info) if (info->l4_proto == IPPROTO_TCP) { tcp_hdr = (struct tcp_hdr *)((char *)ipv4_hdr + info->l3_len); info->l4_len = (tcp_hdr->data_off & 0xf0) >> 2; - } else + } else if (info->l4_proto == IPPROTO_UDP) + info->l4_len = sizeof(struct udp_hdr); + else info->l4_len = 0; } @@ -152,7 +154,9 @@ parse_ipv6(struct ipv6_hdr *ipv6_hdr, struct testpmd_offload_info *info) if (info->l4_proto == IPPROTO_TCP) { tcp_hdr = (struct tcp_hdr *)((char *)ipv6_hdr + info->l3_len); info->l4_len = (tcp_hdr->data_off & 0xf0) >> 2; - } else + } else if (info->l4_proto == IPPROTO_UDP) + info->l4_len = sizeof(struct udp_hdr); + else info->l4_len = 0; } -- 2.11.0 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2018-11-29 15:01:50.002712297 -0800 +++ 0110-app-testpmd-fix-L4-length-for-UDP-checksum.patch 2018-11-29 15:01:45.287957000 -0800 @@ -1,15 +1,16 @@ -From 2b5651c026d8d1a687a8f7a210b1b8f13f906911 Mon Sep 17 00:00:00 2001 +From f081f8c65088f7fab4b1071230ca723bc817c980 Mon Sep 17 00:00:00 2001 From: Raslan Darawsheh Date: Sun, 11 Nov 2018 15:31:37 +0000 Subject: [PATCH] app/testpmd: fix L4 length for UDP checksum +[ upstream commit 2b5651c026d8d1a687a8f7a210b1b8f13f906911 ] + testpmd only sets the L4 len in case of TCP packets. some PMD's like tap rely on mbuf meta data to calculate csum This will set the L4 len for UDP packets same as TCP Fixes: 160c3dc9458c ("app/testpmd: introduce IP parsing functions in csum fwd engine") -CC: stable@dpdk.org Signed-off-by: Raslan Darawsheh Signed-off-by: Ophir Munk @@ -19,10 +20,10 @@ 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/app/test-pmd/csumonly.c b/app/test-pmd/csumonly.c -index dce4b9be7..ffeee2051 100644 +index aa29f5fc1..4800e74e5 100644 --- a/app/test-pmd/csumonly.c +++ b/app/test-pmd/csumonly.c -@@ -111,7 +111,9 @@ parse_ipv4(struct ipv4_hdr *ipv4_hdr, struct testpmd_offload_info *info) +@@ -135,7 +135,9 @@ parse_ipv4(struct ipv4_hdr *ipv4_hdr, struct testpmd_offload_info *info) if (info->l4_proto == IPPROTO_TCP) { tcp_hdr = (struct tcp_hdr *)((char *)ipv4_hdr + info->l3_len); info->l4_len = (tcp_hdr->data_off & 0xf0) >> 2; @@ -33,7 +34,7 @@ info->l4_len = 0; } -@@ -128,7 +130,9 @@ parse_ipv6(struct ipv6_hdr *ipv6_hdr, struct testpmd_offload_info *info) +@@ -152,7 +154,9 @@ parse_ipv6(struct ipv6_hdr *ipv6_hdr, struct testpmd_offload_info *info) if (info->l4_proto == IPPROTO_TCP) { tcp_hdr = (struct tcp_hdr *)((char *)ipv6_hdr + info->l3_len); info->l4_len = (tcp_hdr->data_off & 0xf0) >> 2;