mirror of
https://github.com/slackhq/nebula.git
synced 2026-08-15 11:17:01 +02:00
6c0305c7ae
GSOSize came from len(pays[0]) while the iovec build skips empty fragments, so a leading empty fragment emitted a TSO/USO header with gso_size == 0 -- virtio_net_hdr_to_skb rejects that with EINVAL and the whole superpacket is lost. Compute gso_size from the first non-empty fragment and use the non-empty count to decide superpacket vs plain. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>