Re: [PATCH 4/4] tun: indicate support for USO feature
From: Yuri Benditovich <hidden>
Date: 2021-05-14 07:38:56
Also in:
lkml, virtualization
On Fri, May 14, 2021 at 10:16 AM Jason Wang [off-list ref] wrote:
On Fri, May 14, 2021 at 4:35 AM Willem de Bruijn [off-list ref] wrote:quoted
quoted
quoted
But surprisingly when TUN receives TUN_F_UFO it does not propagate it anywhere, there is no corresponding NETIF flag.(It looks like I drop the community and other ccs accidentally, adding them back and sorry) Actually, there is one, NETIF_F_GSO_UDP. Kernel used to have NETIF_F_UFO, but it was removed due to bugs and the lack of real hardware support. Then we found it breaks uABI, so Willem tries to make it appear for userspace again, and then it was renamed to NETIF_F_GSO_UDP. But I think it's a bug that we don't proporate TUN_F_UFO to NETIF flag, this is a must for the driver that doesn't support VIRTIO_NET_F_GUEST_UFO. I just try to disable all offloads and mrg_rxbuf, then netperf UDP_STREAM from host to guest gives me bad length packet in the guest. Willem, I think we probably need to fix this.We had to add back support for the kernel to accept UFO packets from userspace over tuntap. The kernel does not generate such packets, so a guest should never be concerned of receiving UFO packets.That's my feeling as well. But when I: 1) turn off all guest gso feature and mrg rx buffers, in this case virtio-net will only allocate 1500 bytes for each packet 2) doing netperf (UDP_STREAM) from local host to guest, I see packet were truncated in the guest
Is it possible that the virtio-net does not disable UFO offload? IMO it sets NETIF_F_LRO too bravely.
quoted
Perhaps i'm misunderstanding the problem here.I will re-check and get back to you. (probably need a while since I will not be online for the next week). Thanks