Caught by code review, offloading checksum of IPv6 UDP packets was wrong as the IPv6 header used for the pseudo header checksum was wrong.
Fixes: cb0cbffbe8fb ("netdev-linux: Favour inner packet for multi-encapsulated TSO.") Signed-off-by: David Marchand <david.march...@redhat.com> --- lib/netdev-linux.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c index 19bf62ecee..a89f7b8a21 100644 --- a/lib/netdev-linux.c +++ b/lib/netdev-linux.c @@ -7272,7 +7272,7 @@ netdev_linux_prepend_vnet_hdr(struct dp_packet *b, int mtu) const struct ip_header *ip_hdr = l3_off; csum = ~csum_finish(packet_csum_pseudoheader(ip_hdr)); } else if (dp_packet_hwol_tx_ipv6(b)) { - const struct ovs_16aligned_ip6_hdr *ip6_hdr = l4_off; + const struct ovs_16aligned_ip6_hdr *ip6_hdr = l3_off; csum = ~csum_finish(packet_csum_pseudoheader6(ip6_hdr)); } -- 2.48.1 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev