Re: [PATCH net] net: drop bad gso csum_start and offset in virtio_net_hdr

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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
```

```bash
$ 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@xxxxxxxxx/T/#u
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:

```bash
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@xxxxxxxxx; alexander.duyck@xxxxxxxxx; arefev@xxxxxxxxx; davem@xxxxxxxxxxxxx; edumazet@xxxxxxxxxx; jasowang@xxxxxxxxxx; kuba@xxxxxxxxxx; mst@xxxxxxxxxx; netdev@xxxxxxxxxxxxxxx; pabeni@xxxxxxxxxx; stable@xxxxxxxxxxxxxxx; willemb@xxxxxxxxxx
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:

> > On 24/08/07 04:12PM, Greg KH wrote:

> > > On Mon, Aug 05, 2024 at 09:28:29PM +0000, avladu@xxxxxxxxxxxxxxxxxxxxxx wrote:

> > > > Hello,

> > > >

> > > > 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

> > > > https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/include/linux/virtio_net.h?h=3Dv6.6.44&id=3D90d41ebe0cd4635f6410471efc1dd71b33e894cf

> > >

> > > Please provide a working backport, the change does not properly

> > > cherry-pick.

> > >

> > > greg k-h

> >

> > Hey Greg, hey Sasha,

> >

> > this patch also needs backporting to the 6.6.y and 6.10.y series as the

> > 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 <willemb@xxxxxxxxxx>

     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/

[1]: https://github.com/tailscale/tailscale/issues/13041#issuecomment-2272326491






[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux