Bug 733651 - netfront MTU drops to 1500 after domain migration
Summary: netfront MTU drops to 1500 after domain migration
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: kernel
Version: 6.3
Hardware: All
OS: Linux
medium
high
Target Milestone: rc
: ---
Assignee: Paolo Bonzini
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On: 697021 720347
Blocks: 653816
TreeView+ depends on / blocked
 
Reported: 2011-08-26 11:18 UTC by Paolo Bonzini
Modified: 2011-12-06 14:06 UTC (History)
11 users (show)

Fixed In Version: kernel-2.6.32-206.el6
Doc Type: Bug Fix
Doc Text:
Clone Of: 733416
Environment:
Last Closed: 2011-12-06 14:06:39 UTC


Attachments (Terms of Use)
forward port of the RHEL5 patch (6.72 KB, patch)
2011-08-29 12:18 UTC, Paolo Bonzini
no flags Details | Diff


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2011:1530 normal SHIPPED_LIVE Moderate: Red Hat Enterprise Linux 6 kernel security, bug fix and enhancement update 2011-12-06 01:45:35 UTC

Description Paolo Bonzini 2011-08-26 11:18:47 UTC
+++ This bug was initially created as a clone of Bug #733416 +++

Xen drops the MTU of a guest's netfront interface to 1500 after migration.

For now I'm attaching the bug to kernel-xen, but I am still not really sure whether this is the right component.

Test info for QE:

- connect two machines with a crossover cable so that eth0 is the crossover cable and eth1 is the public network

- configure Xen so that you'll be able to migrate between the machines (shared storage, relocation server, etc.)

- configure the cross link on one machine like

# Intel Corporation 82574L Gigabit Network Connection
DEVICE=eth0
HWADDR=00:21:5E:6E:F0:29
ONBOOT=yes
HOTPLUG=no
IPADDR=169.254.100.200
NETMASK=255.255.0.0
NETWORK=169.254.0.0
MTU=9000

and similarly on the other machine

- on both machines, ensure the Xen bridge connects the right devices, for example by changing the network-script line in /etc/xen/xend-config.sxp to this:

(network-script 'network-bridge netdev=eth0 bridge=xenbr0')

- on both machines, ensure the Xen bridge has its MTU set to 9000, for example by adding this (huge hack) to /etc/init.d/xend at the end of function await_daemons_up

sleep 5
ip link set mtu 9000 dev vif0.1
ip link set mtu 9000 dev peth0
ip link set mtu 9000 dev xenbr0

- install a guest in one of the machines.  ensure the guest has also a static IP configuration in the same subnet, and also has MTU=9000 in its /etc/sysconfig/network-scripts/ifcfg-eth0.  Also, ensure that the guest is using xenbr0 and not virbr0.

- run ifconfig around "xm create"

ifconfig > before
xm create test1
# wait a few seconds
ifconfig | diff before -

The diff should show that the new vif interface has MTU=9000.  Similarly, "ifconfig" in the guest should show MTU=9000.

- ensure that you can ping the guest from both hosts.

- migrate the guest from one host to the other.  before migrating, run

ifconfig > before

on the guest and *destination* host and after migration run

ifconfig | diff before -

For both the guest and the destination host, the diff should show that the virtual network interface (vifN.0 on the host, eth0 on the guest) has MTU=9000.  

- ensure that you can ping the guest from both hosts

--- Additional comment from pm-rhel@redhat.com on 2011-08-26 04:49:40 EDT ---

This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release.  Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products.  This request is not yet committed for inclusion in an Update
release.

Comment 1 Paolo Bonzini 2011-08-29 12:18:44 UTC
Created attachment 520373 [details]
forward port of the RHEL5 patch

Upstream did the same using the hw_features field (and ndo_fix_features/ndo_set_features; see commits fb50793 and later) that is not in RHEL6, so I'm instead forward porting the RHEL5 changes.

Comment 2 RHEL Product and Program Management 2011-08-29 14:10:39 UTC
This request was evaluated by Red Hat Product Management for inclusion
in a Red Hat Enterprise Linux maintenance release. Product Management has 
requested further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed 
products. This request is not yet committed for inclusion in an Update release.

Comment 3 Paolo Bonzini 2011-08-31 08:38:34 UTC
> - on both machines, ensure the Xen bridge has its MTU set to 9000, for example
> by adding this (huge hack) to /etc/init.d/xend at the end of function
> await_daemons_up
> 
> sleep 5
> ip link set mtu 9000 dev vif0.1
> ip link set mtu 9000 dev peth0
> ip link set mtu 9000 dev xenbr0

This is not necessary if you have the patch for bug 733417.

Comment 4 Aristeu Rozanski 2011-10-05 15:14:46 UTC
Patch(es) available on kernel-2.6.32-206.el6

Comment 7 Qixiang Wan 2011-10-09 07:26:33 UTC
Verified with RHEL6.2-20111005.1 (kernel-2.6.32-206.el6, both 32 and 64 bit PV guests), host is kernel-xen-2.6.18-274.5.1.el5.x86_64 + xen-3.0.3-132.el5_7.1.x86_64 which has the fixes for bug 738389, bug 738608 and bug 738610.

Test setup as bug 738608 comment 6. After migrate guest from source to destination, the MTU of vif in guest can keep the value of 9000. Change bug to VERIFIED.

Comment 8 errata-xmlrpc 2011-12-06 14:06:39 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2011-1530.html


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