You've already forked linux-rockchip
mirror of
https://github.com/armbian/linux-rockchip.git
synced 2026-01-06 11:08:10 -08:00
octeontx2-pf: Fix TSOv6 offload
commit de678ca38861f2eb58814048076dcf95ed1b5bf9 upstream.
HW adds segment size to the payload length
in the IPv6 header. Fix payload length to
just TCP header length instead of 'TCP header
size + IPv6 header size'.
Fixes: 86d7476078 ("octeontx2-pf: TCP segmentation offload support")
Signed-off-by: Sunil Goutham <sgoutham@marvell.com>
Signed-off-by: Ratheesh Kannoth <rkannoth@marvell.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
1c8a016822
commit
72971f4071
@@ -526,9 +526,7 @@ static void otx2_sqe_add_ext(struct otx2_nic *pfvf, struct otx2_snd_queue *sq,
|
||||
htons(ext->lso_sb - skb_network_offset(skb));
|
||||
} else if (skb_shinfo(skb)->gso_type & SKB_GSO_TCPV6) {
|
||||
ext->lso_format = pfvf->hw.lso_tsov6_idx;
|
||||
|
||||
ipv6_hdr(skb)->payload_len =
|
||||
htons(ext->lso_sb - skb_network_offset(skb));
|
||||
ipv6_hdr(skb)->payload_len = htons(tcp_hdrlen(skb));
|
||||
} else if (skb_shinfo(skb)->gso_type & SKB_GSO_UDP_L4) {
|
||||
__be16 l3_proto = vlan_get_protocol(skb);
|
||||
struct udphdr *udph = udp_hdr(skb);
|
||||
|
||||
Reference in New Issue
Block a user