Re: [PATCH net] udp: fix receiving fraglist GSO packets

From: Willem de Bruijn
Date: Mon Aug 19 2024 - 15:53:49 EST


Felix Fietkau wrote:
> When assembling fraglist GSO packets, udp4_gro_complete does not set
> skb->csum_start, which makes the extra validation in __udp_gso_segment fail.
>
> Fixes: 89add40066f9 ("net: drop bad gso csum_start and offset in virtio_net_hdr")
> Signed-off-by: Felix Fietkau <nbd@xxxxxxxx>

Reviewed-by: Willem de Bruijn <willemb@xxxxxxxxxx>

Oh right, UDP GRO fraglist skbs are converted to CHECKSUM_UNNECSSARY
with __skb_incr_checksum_unnecessary.

Rather than to CHECKSUM_PARTIAL, as udp_gro_complete_segment does for
non fraglist GRO packets.

virtio_net_hdr_to_skb cannot generate fraglist packets, so this bad
input check is unnecessary for SKB_GSO_FRAGLIST too.

Thanks for the fix, Felix.