Re: [PATCH net] net: drop bad gso csum_start and offset in virtio_net_hdr
From: Adrian Vladu <hidden>
Date: 2024-08-08 09:57:11
Also in:
stable
Hello, Hopefully I can also offer some clarity on the issue in the context of the Linux kernel version 6.6.44. Regarding the 6.6.y case, this commit is the offending one: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.6.y&id=90d41ebe0cd4635f6410471efc1dd71b33e894cf With this commit, Flatcar virtual machines using Linux kernel version 6.6.44 running on QEMU-KVM AMD64 hosts started having these kind of messages in the dmesg while the network tests were failing:
[ 237.422038] eth0: bad gso: type: 1, size: 1432
$ dmesg | grep "bad gso" | wc -l
531
We observed that by cherry-picking this commit https://github.com/torvalds/linux/commit/89add40066f9ed9abe5f7f886fe5789ff7e0c50e on the 6.6.44 tree, the failures were fixed and patch has already been sent here: https://lore.kernel.org/stable/20240806122236.60183-1-mathieu.tortuyaux@gmail.com/T/#u (local) To give some context, in the 89add40066f9ed9abe5f7f886fe5789ff7e0c50e commit description, it is stated that the commit fixes the https://github.com/torvalds/linux/commit/e269d79c7d35aa3808b1f3c1737d63dab504ddc8, that is how we got to testing the fix in the first place. Flatcar patch commit: https://github.com/flatcar/scripts/pull/2194/commits/33259937abe19f612faac255706d5a509666fbc9 that has been built for the Flatcar guests and successfully tested on QEMU-KVM AMD64 hosts. I tried manually to directly cherry-pick 89add40066f9ed9abe5f7f886fe5789ff7e0c50e on the 6.6.y branch and it works fine:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git -b linux-6.6.y
cd linux
git remote add upstream https://github.com/torvalds/linux/
git fetch upstream
git cherry-pick 89add40066f9ed9abe5f7f886fe5789ff7e0c50e
Related to the 6.1.y tree, the commit 89add40066f9ed9abe5f7f886fe5789ff7e0c50e cannot be cherry-picked without conflicts, and it requires more careful attention and testing. Related to the 6.10.y tree, the commit 89add40066f9ed9abe5f7f886fe5789ff7e0c50e can be cherry-picked, but has not been tested by us. Thanks, Adrian. ________________________________________ From: Christian Heusel Sent: Thursday, August 8, 2024 12:52 PM To: Greg KH Cc: Adrian Vladu; willemdebruijn.kernel@gmail.com; alexander.duyck@gmail.com; arefev@swemel.ru; davem@davemloft.net; edumazet@google.com; jasowang@redhat.com; kuba@kernel.org; mst@redhat.com; netdev@vger.kernel.org; pabeni@redhat.com; stable@vger.kernel.org; willemb@google.com Subject: Re: [PATCH net] net: drop bad gso csum_start and offset in virtio_net_hdr On 24/08/08 08:38AM, Greg KH wrote:
On Wed, Aug 07, 2024 at 08:34:48PM +0200, Christian Heusel wrote:
quoted
On 24/08/07 04:12PM, Greg KH wrote:
quoted
quoted
On Mon, Aug 05, 2024 at 09:28:29PM +0000, avladu@cloudbasesolutions.com wrote:
quoted
quoted
quoted
Hello,
quoted
quoted
quoted
quoted
quoted
quoted
This patch needs to be backported to the stable 6.1.x and 6.64.x branches, as the initial patch https://github.com/torvalds/linux/commit/e269d79c7d35aa3808b1f3c1737d63dab504ddc8 was backported a few days ago: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/include/linux/virtio_net.h?h=3Dv6.1.103&id=3D5b1997487a3f3373b0f580c8a20b56c1b64b0775
quoted
quoted
quoted
quoted
Please provide a working backport, the change does not properly
quoted
quoted
cherry-pick.
quoted
quoted
quoted
quoted
greg k-h
quoted
quoted
Hey Greg, hey Sasha,
quoted
quoted
this patch also needs backporting to the 6.6.y and 6.10.y series as the
quoted
buggy commit was backported to to all three series.
What buggy commit?
The issue is that commit e269d79c7d35 ("net: missing check virtio")
introduces a bug which is fixed by 89add40066f9 ("net: drop bad gso
csum_start and offset in virtio_net_hdr") which it also carries a
"Fixes:" tag for.
Therefore it would be good to also get 89add40066f9 backported.
And how was this tested, it does not apply cleanly to the trees for me
at all.
I have tested this with the procedure as described in [0]: $ git switch linux-6.10.y $ git cherry-pick -x 89add40066f9ed9abe5f7f886fe5789ff7e0c50e Auto-merging net/ipv4/udp_offload.c [linux-6.10.y fbc0d2bea065] net: drop bad gso csum_start and offset in virtio_net_hdr Author: Willem de Bruijn [off-list ref] Date: Mon Jul 29 16:10:12 2024 -0400 3 files changed, 12 insertions(+), 11 deletions(-) This also works for linux-6.6.y, but not for linux-6.1.y, as it fails with a merge error there. The relevant commit is confirmed to fix the issue in the relevant Githu issue here[1]: @marek22k commented > They both fix the problem for me.
confused,
Sorry for the confusion! I hope the above clears things up a little :)
greg k-h
Cheers, Christian [0]: https://lore.kernel.org/all/2024060624-platinum-ladies-9214@gregkh/ (local) [1]: https://github.com/tailscale/tailscale/issues/13041#issuecomment-2272326491