On Fri, Mar 15, 2013 at 05:12:38PM -0700, sfel...@cumulusnetworks.com wrote:
> From: Scott Feldman <sfel...@cumulusnetworks.com>
> 
> Socket buffer sizes were hard-coded to 4K.  Bump this up to 12K to handle 
> typical
> MTU=9000 Jumbo frame pkt.  Ran into this limitation when using -netdev UDP 
> sockets
> to connect VM-to-VM, where VM interface is configure with MTU=9000.  Using
> virtio_net NIC model.  Test is simple: ping -M do -s 8500 <target>.  This test
> will attempt to ping with unfragmented packet of given size.  Without patch,
> size is limited to < 4K (minus protocol hdrs).  With patch, ping test works
> with pkt size up to 9000 (again, minus protocol hdrs).
> 
> Signed-off-by: Scott Feldman <sfel...@cumulusnetworks.com>
> ---
>  net/net.c    |    2 +-
>  net/socket.c |    4 ++--
>  2 files changed, 3 insertions(+), 3 deletions(-)

grep reveals that VDE is limited in a similar way.  tap-win32 may be
affected too.

I noticed that Linux tap goes straight for:
net/tap.c:#define TAP_BUFSIZE (4096 + 65536)

The 4096 is reserved for network/virtio headers.

Please move TAP_BUFSIZE to include/net/net.h and rename it to
NET_BUFSIZE.  Then socket, vde, and tap-win32 can use it.

Stefan

Reply via email to