Ilya Maximets <[email protected]> writes: > OVS kernel module is incorrectly updating checksums while changing > IPv6 fields of later fragments that doesn't really have L4 headers. > > This makes the 'ping6 between two ports with header modify' test > fail on most of the distribution kernels. > > The issue got indirectly fixed in latest 5.19 with commit: > > 12378a5a75e3 ("net: openvswitch: fix parsing of nw_proto for IPv6 > fragments") > > The reason is that set_ipv6() function in net/openvswitch/actions.c > is using the protocol number from the parsed flow key and not from > the packet itself, and nw_proto=44 is not a protocol where we can > update the checksum. > > It was backported to all supported upstream stable trees, but didn't > find its way to most of the distributions yet. > > Restricting the test to 5.19+ kernels to avoid failures on distro > kernels. Additionally allowing the previous test for later fragments > to be executed in userspace testsuite. > > Fixes: 2ff43c78c685 ("packets: Re-calculate IPv6 checksum only for first frag > upon modify.") > Signed-off-by: Ilya Maximets <[email protected]> > ---
Acked-by: Aaron Conole <[email protected]> I guess we could try and test against the kernel to see if it has the revert applied instead of just disabling, but not sure how simple such a test would be. _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
