Subject: Re: user space virtio-net exits with "truncating packet" error

From: Michael Tokarev <[email-masked]>
Date: Fri, 15 May 2009 11:07:43 +0400

Or Gerlitz wrote:
> Rusty Russell wrote:
>> The answer is that virtio_net by default only supports 1500 
>> MTU; I've not tried larger MTUs.
> 
> Rusty,
> 
> I hoped to get some performance boost from using checksum and large-send offloads 
> as an alternative to jumbo frames. Looking in the virtio-net kernel driver, I see that the probe
> function checks if virtio_has_feature VIRTIO_NET_F_CSUM ... VIRTIO_NET_F_HOST_TSO ... and if yes
> sets the relevant bits in the NIC features mask. Looking in the virtio qemu code, I also see some offload
> related code.

A trap which I've seen before.

When compiling kvm userspace, ensure your kernel headers installed in
/usr/include has the latest if_tun.h bits, in particular the TUNSETOFFLOAD
and IFF_VNET_HDR definitions.

One solution to this is just to copy that file from kernel-2.6.29.  Or
maybe it's easier to add some -I flags to kvm compile commandline.

And one more note: I'm not sure if there's anything else needed.
Last time I was there -- it was with kvm-84 times I think, maybe
something changed since that.

/mjt