Subject: Re: [PATCH net] virtio-net: alloc big buffers also when guest can receive UFO

From: Jason Wang <[email-masked]>
Date: Thu, 13 Feb 2014 13:40:59 +0800

On 02/13/2014 01:15 PM, Michael S. Tsirkin wrote:
> On Thu, Feb 13, 2014 at 11:02:13AM +0800, Jason Wang wrote:
>> On 02/12/2014 07:59 PM, Michael S. Tsirkin wrote:
>>> On Wed, Feb 12, 2014 at 01:43:28PM +0800, Jason Wang wrote:
>>>>> We should alloc big buffers also when guest can receive UFO
>>>>> pakcets. Otherwise the big packets will be truncated when mergeable rx
>>>>> buffer is disabled.
>>> Not truncated, they will be dropped.
>>>
>> Why dropped? We enable the ufo on tap0 if VIRTIO_NET_F_GUEST_UFO is
>> negotiated. So skb was queued on the receive queue. But since the
>> receive buffer is small, it will be truncated during tun_put_user().
> Hypervisor shouldn't truncate packets silently - if it does
> it's a hypervisor bug. Passing malformed packets to guest is
> a bad idea.
>

Yes, but the commit log describes the current behaviour so it was ok?

Btw, dropping the packets silently is still not good. Virito needs a
method to report rx errors to guest.