Bug 465797 - Using large (>1500) MTU inside XEN domU
Summary: Using large (>1500) MTU inside XEN domU
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel-xen
Version: 5.2
Hardware: All
OS: Linux
medium
medium
Target Milestone: rc
: ---
Assignee: Herbert Xu
QA Contact: Martin Jenner
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-10-06 13:38 UTC by Nenad Opsenica
Modified: 2008-10-13 14:25 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-10-13 14:25:37 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
add RAW_ETHTOOL_OPTS option to ifcfg-* files (1.39 KB, patch)
2008-10-06 13:38 UTC, Nenad Opsenica
no flags Details | Diff

Description Nenad Opsenica 2008-10-06 13:38:24 UTC
Created attachment 319554 [details]
add RAW_ETHTOOL_OPTS option to ifcfg-* files

Description of problem:

To be able to reliably use interfaces with MTU>1500 inside domU, it is necessary to turn off tcp segmentation offload using ethtool.

Attached patch adds not_very_elegant RAW_ETHTOOL_OPTS ifcfg-* option, which is useful for setting up this parameter (e.g. RAW_ETHTOOL_OPTS="-K $DEVICE tso off")

Comment 1 Bill Nottingham 2008-10-07 14:40:01 UTC
.... *why* is it necessary to do that?

Comment 2 Nenad Opsenica 2008-10-07 22:32:42 UTC
My case: dom0 uses gigabit ethernet interfaces; XEN uses bridged interface configuration. In order to maximize throughput, MTU on eth interface in dom0 should be > 1500, so bridge interface and domU eth interface must use the same MTU.

By default, TCP segmentation offloading is turned on on large frames. There is 
no TCP offloading engine in domU "network hardware" and without turning off TSO, it is not possible to establish any TCP connection (CRC errors).

Comment 3 Bill Nottingham 2008-10-08 00:54:27 UTC
(In reply to comment #2)
> By default, TCP segmentation offloading is turned on on large frames. There is 
> no TCP offloading engine in domU "network hardware" and without turning off
> TSO, it is not possible to establish any TCP connection (CRC errors).

This smells like a kernel bug (either in the driver or network layer) - it shouldn't be running by default in a way that eats packets.

Comment 5 Herbert Xu 2008-10-08 11:18:30 UTC
What network driver are you using?

Comment 6 Nenad Opsenica 2008-10-09 13:17:05 UTC
Driver for one eth card is e1000.
The second card is VIA Velocity, I'm using "velocityget" driver (VIA supplied), as kernel "via-velocity" has some issues (it was long time ago that I checked, I really can't remeber what were the problems, but something with jumbo frames support and reliability).

Comment 7 Herbert Xu 2008-10-09 14:47:59 UTC
So exactly which one is it that's having problems with Xen? Also what do you mean by CRC errors? If you mean checksum errors please attach the tcpdump from both within dom0 and from a physical machine other than the one where you're running Xen showing the packet data with the -x option.  Thanks!

Comment 8 Nenad Opsenica 2008-10-13 13:39:18 UTC
Huh, in the meantime, problem has disappeared :)
As far as I can recall, I had this problem one year ago, and found that TSO setting was the cause.
With software packages I use today (kernel-xen-2.6.18-92.1.13.el5), everything is working just fine. 
Sorry for bothering.

Comment 9 Bill Burns 2008-10-13 14:25:37 UTC
Based on comment #8 from reporter, closing this as current release.


Note You need to log in before you can comment on or make changes to this bug.