Subject: Re: [PATCH v2 net 1/2] drivers/net: Disable UFO through virtio

From: Jason Wang <[email-masked]>
Date: Fri, 21 Nov 2014 09:47:18 +0800

On 11/19/2014 05:14 PM, Michael S. Tsirkin wrote:
> On Thu, Oct 30, 2014 at 06:27:12PM +0000, Ben Hutchings wrote:
>> > IPv6 does not allow fragmentation by routers, so there is no
>> > fragmentation ID in the fixed header.  UFO for IPv6 requires the ID to
>> > be passed separately, but there is no provision for this in the virtio
>> > net protocol.
>> > 
>> > Until recently our software implementation of UFO/IPv6 generated a new
>> > ID, but this was a bug.  Now we will use ID=0 for any UFO/IPv6 packet
>> > passed through a tap, which is even worse.
>> > 
>> > Unfortunately there is no distinction between UFO/IPv4 and v6
>> > features, so disable UFO on taps and virtio_net completely until we
>> > have a proper solution.
>> > 
>> > We cannot depend on VM managers respecting the tap feature flags, so
>> > keep accepting UFO packets but log a warning the first time we do
>> > this.
>> > 
>> > Signed-off-by: Ben Hutchings <[email-masked]>
>> > Fixes: 916e4cf46d02 ("ipv6: reuse ip6_frag_id from ip6_ufo_append_data")
> There's something I don't understand here. I see:
>
>         NETIF_F_UFO_BIT,                /* ... UDPv4 fragmentation */
>
> this comment is wrong then?

Looks wrong, at least ufo6 depends check this bit in ip6_output.c