linux-stable/tools
Yuri Benditovich 622479d100 net: change maximum number of UDP segments to 128
[ Upstream commit 1382e3b6a3 ]

The commit fc8b2a6194
("net: more strict VIRTIO_NET_HDR_GSO_UDP_L4 validation")
adds check of potential number of UDP segments vs
UDP_MAX_SEGMENTS in linux/virtio_net.h.
After this change certification test of USO guest-to-guest
transmit on Windows driver for virtio-net device fails,
for example with packet size of ~64K and mss of 536 bytes.
In general the USO should not be more restrictive than TSO.
Indeed, in case of unreasonably small mss a lot of segments
can cause queue overflow and packet loss on the destination.
Limit of 128 segments is good for any practical purpose,
with minimal meaningful mss of 536 the maximal UDP packet will
be divided to ~120 segments.
The number of segments for UDP packets is validated vs
UDP_MAX_SEGMENTS also in udp.c (v4,v6), this does not affect
quest-to-guest path but does affect packets sent to host, for
example.
It is important to mention that UDP_MAX_SEGMENTS is kernel-only
define and not available to user mode socket applications.
In order to request MSS smaller than MTU the applications
just uses setsockopt with SOL_UDP and UDP_SEGMENT and there is
no limitations on socket API level.

Fixes: fc8b2a6194 ("net: more strict VIRTIO_NET_HDR_GSO_UDP_L4 validation")
Signed-off-by: Yuri Benditovich <yuri.benditovich@daynix.com>
Reviewed-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-04-27 17:11:32 +02:00
..
accounting
arch x86/CPU/AMD: Add X86_FEATURE_ZEN1 2024-04-10 16:35:47 +02:00
bootconfig
bpf tools/resolve_btfids: Fix cross-compilation to non-host endianness 2024-03-26 18:19:27 -04:00
build perf cs-etm: Bump minimum OpenCSD version to ensure a bugfix is present 2024-02-05 20:14:31 +00:00
certs
cgroup
counter
crypto/ccp crypto: ccp - Fix some unfused tests 2023-11-20 11:59:18 +01:00
debugging
edid
firewire
firmware
gpio
hv hv/hv_kvp_daemon: Some small fixes for handling NM keyfiles 2023-12-03 07:33:02 +01:00
iio tools: iio: replace seekdir() in iio_generic_buffer 2024-04-13 13:07:38 +02:00
include tools/resolve_btfids: fix build with musl libc 2024-04-03 15:29:03 +02:00
kvm/kvm_stat
laptop
leds
lib libperf evlist: Avoid out-of-bounds access 2024-04-13 13:07:36 +02:00
memory-model
mm tools/mm: fix undefined reference to pthread_once 2023-09-05 10:13:45 -07:00
net/ynl tools: ynl: fix setting presence bits in simple nests 2024-04-10 16:35:41 +02:00
objtool objtool: Fix UNWIND_HINT_{SAVE,RESTORE} across basic blocks 2024-03-26 18:19:35 -04:00
pci
pcmcia
perf perf top: Use evsel's cpus to replace user_requested_cpus 2024-04-03 15:28:53 +02:00
power tools/power x86_energy_perf_policy: Fix file leak in get_pkg_num() 2024-04-13 13:07:31 +02:00
rcu
scripts
spi
testing net: change maximum number of UDP segments to 128 2024-04-27 17:11:32 +02:00
thermal
time
tracing tools/rtla: Fix Makefile compiler options for clang 2024-02-23 09:25:15 +01:00
usb
verification tools/rv: Fix Makefile compiler options for clang 2024-02-23 09:25:14 +01:00
virtio tools/virtio: Add dma sync api for virtio test 2023-10-16 05:32:23 -04:00
wmi
workqueue
Makefile