netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net v2] net: thunderx: Fix TCP/UDP checksum offload for IPv6 pkts
@ 2017-11-23 14:41 Aleksey Makarov
  2017-11-23 18:10 ` Eric Dumazet
  2017-11-23 18:39 ` David Miller
  0 siblings, 2 replies; 3+ messages in thread
From: Aleksey Makarov @ 2017-11-23 14:41 UTC (permalink / raw)
  To: netdev
  Cc: linux-kernel, Goutham, Sunil, Robert Richter, Florian Westphal,
	Eric Dumazet, Aleksey Makarov, Sunil Goutham, Aleksey Makarov,
	linux-arm-kernel

From: Sunil Goutham <sgoutham@cavium.com>

Don't offload IP header checksum to NIC.

This fixes a previous patch which enabled checksum offloading
for both IPv4 and IPv6 packets.  So L3 checksum offload was
getting enabled for IPv6 pkts.  And HW is dropping these pkts
as it assumes the pkt is IPv4 when IP csum offload is set
in the SQ descriptor.

Fixes: bbbb494fd005 ("net: thunderx: Enable TSO and checksum offloads for ipv6")
Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
Signed-off-by: Aleksey Makarov <aleksey.makarov@auriga.com>
---
 drivers/net/ethernet/cavium/thunder/nicvf_queues.c | 1 -
 1 file changed, 1 deletion(-)

v2:
- Don't enable checksum offloading both for IPv4 and IPv6 (Eric Dumazet)

v1:
  https://lkml.kernel.org/r/20171122123727.23580-1-aleksey.makarov@auriga.com

diff --git a/drivers/net/ethernet/cavium/thunder/nicvf_queues.c b/drivers/net/ethernet/cavium/thunder/nicvf_queues.c
index d4496e9afcdf..8b2c31e2a2b0 100644
--- a/drivers/net/ethernet/cavium/thunder/nicvf_queues.c
+++ b/drivers/net/ethernet/cavium/thunder/nicvf_queues.c
@@ -1355,7 +1355,6 @@ nicvf_sq_add_hdr_subdesc(struct nicvf *nic, struct snd_queue *sq, int qentry,
 
 	/* Offload checksum calculation to HW */
 	if (skb->ip_summed == CHECKSUM_PARTIAL) {
-		hdr->csum_l3 = 1; /* Enable IP csum calculation */
 		hdr->l3_offset = skb_network_offset(skb);
 		hdr->l4_offset = skb_transport_offset(skb);
 
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH net v2] net: thunderx: Fix TCP/UDP checksum offload for IPv6 pkts
  2017-11-23 14:41 [PATCH net v2] net: thunderx: Fix TCP/UDP checksum offload for IPv6 pkts Aleksey Makarov
@ 2017-11-23 18:10 ` Eric Dumazet
  2017-11-23 18:39 ` David Miller
  1 sibling, 0 replies; 3+ messages in thread
From: Eric Dumazet @ 2017-11-23 18:10 UTC (permalink / raw)
  To: Aleksey Makarov, netdev
  Cc: linux-kernel, Goutham, Sunil, Robert Richter, Florian Westphal,
	Aleksey Makarov, Sunil Goutham, linux-arm-kernel

On Thu, 2017-11-23 at 17:41 +0300, Aleksey Makarov wrote:
> From: Sunil Goutham <sgoutham@cavium.com>
> 
> Don't offload IP header checksum to NIC.
> 
> This fixes a previous patch which enabled checksum offloading
> for both IPv4 and IPv6 packets.  So L3 checksum offload was
> getting enabled for IPv6 pkts.  And HW is dropping these pkts
> as it assumes the pkt is IPv4 when IP csum offload is set
> in the SQ descriptor.
> 
> Fixes: bbbb494fd005 ("net: thunderx: Enable TSO and checksum offloads
> for ipv6")
> Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
> Signed-off-by: Aleksey Makarov <aleksey.makarov@auriga.com>
> ---
>  drivers/net/ethernet/cavium/thunder/nicvf_queues.c | 1 -
>  1 file changed, 1 deletion(-)
> 
> v2:
> - Don't enable checksum offloading both for IPv4 and IPv6 (Eric
> Dumazet)
> 
> v1:
>   https://lkml.kernel.org/r/20171122123727.23580-1-aleksey.makarov@au
> riga.com
> 
> diff --git a/drivers/net/ethernet/cavium/thunder/nicvf_queues.c
> b/drivers/net/ethernet/cavium/thunder/nicvf_queues.c
> index d4496e9afcdf..8b2c31e2a2b0 100644
> --- a/drivers/net/ethernet/cavium/thunder/nicvf_queues.c
> +++ b/drivers/net/ethernet/cavium/thunder/nicvf_queues.c
> @@ -1355,7 +1355,6 @@ nicvf_sq_add_hdr_subdesc(struct nicvf *nic,
> struct snd_queue *sq, int qentry,
>  
>  	/* Offload checksum calculation to HW */
>  	if (skb->ip_summed == CHECKSUM_PARTIAL) {
> -		hdr->csum_l3 = 1; /* Enable IP csum calculation */
>  		hdr->l3_offset = skb_network_offset(skb);
>  		hdr->l4_offset = skb_transport_offset(skb);
>  

Reviewed-by: Eric Dumazet <edumazet@google.com>

Thanks !

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH net v2] net: thunderx: Fix TCP/UDP checksum offload for IPv6 pkts
  2017-11-23 14:41 [PATCH net v2] net: thunderx: Fix TCP/UDP checksum offload for IPv6 pkts Aleksey Makarov
  2017-11-23 18:10 ` Eric Dumazet
@ 2017-11-23 18:39 ` David Miller
  1 sibling, 0 replies; 3+ messages in thread
From: David Miller @ 2017-11-23 18:39 UTC (permalink / raw)
  To: aleksey.makarov
  Cc: netdev, linux-kernel, Sunil.Goutham, rric, fw, eric.dumazet,
	aleksey.makarov, sgoutham, linux-arm-kernel

From: Aleksey Makarov <aleksey.makarov@auriga.com>
Date: Thu, 23 Nov 2017 17:41:56 +0300

> From: Sunil Goutham <sgoutham@cavium.com>
> 
> Don't offload IP header checksum to NIC.
> 
> This fixes a previous patch which enabled checksum offloading
> for both IPv4 and IPv6 packets.  So L3 checksum offload was
> getting enabled for IPv6 pkts.  And HW is dropping these pkts
> as it assumes the pkt is IPv4 when IP csum offload is set
> in the SQ descriptor.
> 
> Fixes: bbbb494fd005 ("net: thunderx: Enable TSO and checksum offloads for ipv6")

This fixes tag contains an invalid GIT SHA1-ID.

Please fix this up.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-11-23 18:39 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-23 14:41 [PATCH net v2] net: thunderx: Fix TCP/UDP checksum offload for IPv6 pkts Aleksey Makarov
2017-11-23 18:10 ` Eric Dumazet
2017-11-23 18:39 ` David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).