> diff --git a/include/linux/virtio_net.h b/include/linux/virtio_net.h
> index 5209b5e..32fb046 100644
> --- a/include/linux/virtio_net.h
> +++ b/include/linux/virtio_net.h
> @@ -18,9 +18,6 @@ static inline int virtio_net_hdr_to_skb(struct sk_buff *skb,
>                 case VIRTIO_NET_HDR_GSO_TCPV6:
>                         gso_type = SKB_GSO_TCPV6;
>                         break;
> -               case VIRTIO_NET_HDR_GSO_UDP:
> -                       gso_type = SKB_GSO_UDP;
> -                       break;

Virtio devices negotiate feature support before using this, but
tuntap and pf_packet may be passing these packets unconditionally.
Perhaps we should fragment those on the spot with skb_segment.

> --- a/net/ipv4/udp_offload.c
> +++ b/net/ipv4/udp_offload.c
> @@ -21,7 +21,7 @@ static struct sk_buff *__skb_udp_tunnel_segment(struct 
> sk_buff *skb,
>         __be16 new_protocol, bool is_ipv6)

In this file, can now remove all of udp4_ufo_fragment, and
udp6_ufo_fragment in net/ipv6.

Reply via email to