[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-users] Jumbo frame support for Xen
Hi, I had to use bridge interfaces with mtu other than 9000, so I started to google for a solution. Then I found this thread: http://web.archiveorange.com/archive/v/ZvO4j2ymSAvyo8GNrwhY But, It didn't work, as the original author says. I tried to find an easier way, to setup this, so as I found out: If you configure a vif's mtu, the logical solution is to use the same mtu as the bridge interface -> So I wrote a smaller, nicer, and... a working patch. The "trick" is that, I don't use the xen's bridge creation scripts, I preconfigure my bridge interfaces from my Debian configuration, far before the xen things would start. bridge entry from my /etc/network/interfaces: auto br201 iface br201 inet static address 10.0.3.5 netmask 255.255.0.0 network 10.0.0.0 broadcast 10.0.255.255 mtu 9000 bridge_ports bond0.201 bridge_fd 0 bridge_maxwait 0 This iface config pre-creates the vlan if on my bonding if, creates the bridge, add the bond.vlan into my bridge interface, and every mtu is OK, until xen starts... Then, with my patched xen scripts,... work again, still, whatever you want: It's just work! ;-) Use it wise, and for your own risk! The patch: diff -urN /etc/xen/scripts.orig/vif-bridge /etc/xen/scripts/vif-bridge --- /etc/xen/scripts.orig/vif-bridge 2011-04-14 15:24:51.000000000 +0200 +++ /etc/xen/scripts/vif-bridge 2011-10-12 18:13:13.873102049 +0200 @@ -82,6 +82,7 @@ case "$command" in online) setup_bridge_port "$vif" + set_vif_mtu "$vif" "$(get_if_mtu $bridge)" add_to_bridge "$bridge" "$vif" ;; diff -urN /etc/xen/scripts.orig/xen-network-common.sh /etc/xen/scripts/xen-network-common.sh --- /etc/xen/scripts.orig/xen-network-common.sh 2010-06-21 15:46:02.000000000 +0200 +++ /etc/xen/scripts/xen-network-common.sh 2011-10-12 18:07:00.456909410 +0200 @@ -116,3 +116,19 @@ ip link set ${dev} up } +get_if_mtu () { + local dev=$1 + local line + ip link show $dev | \ + ( read line + line="${line##*mtu }" + line="${line%% *}" + echo $line + cat >/dev/null ) +} + +set_vif_mtu () { + local vif=$1 + local mtu=$2 + ip link set "$vif" mtu "$mtu" +} Cheers! Attachment:
xen-bridge-fix-mtu.patch.gz _______________________________________________ Xen-users mailing list Xen-users@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-users
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |