This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] incompatibility of netfront driver with bonding module

To: Masroor Vettuparambil <Masroor.Vettuparambil@xxxxxxxxxxxx>
Subject: [Xen-devel] incompatibility of netfront driver with bonding module
From: Yosuke Iwamatsu <y-iwamatsu@xxxxxxxxxxxxx>
Date: Mon, 07 Apr 2008 16:05:56 +0900
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Mon, 07 Apr 2008 00:06:26 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <78C9135A3D2ECE4B8162EBDCE82CAD7703563BAF@nekter>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <78C9135A3D2ECE4B8162EBDCE82CAD77034D3337@nekter> <47F4794C.2040707@xxxxxxxxxxxxx> <78C9135A3D2ECE4B8162EBDCE82CAD7703563BAF@nekter>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird (Windows/20070728)
Masroor Vettuparambil wrote:
Thanks for your work.
I could manage the live migration using a simple check in netfront while
resuming on destination.

if (!(netdev->flags & IFF_SLAVE))
        memcpy(netdev->dev_addr, info->mac, ETH_ALEN);
But this will work only if the interface is enslaved.

In your patch, should we let to change the MAC while interface is up?

It might be desirable, but I don't know for now if we can achieve it

I need to include the support for arp link monitoring to netfront.

Is link monitoring really necessary?
If you mean you use link monitoring to change the active slave of the bond0, I think we can do that using ifenslave command inside domU.
 #ifenslave bond0 eth1     -> enslave new netif(eth1) to bonding device
 #ifenslave -d bond0 eth0  -> release old netif(eth0) from bonding


-----Original Message-----
From: Yosuke Iwamatsu [mailto:y-iwamatsu@xxxxxxxxxxxxx] Sent: Thursday, April 03, 2008 12:00 PM
To: Masroor Vettuparambil
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: incompatibility of netfront driver with bonding module


Masroor Vettuparambil wrote:
1. Normally, bonding will inherit the mac from the first slave and assign it to all the other slaves added later. So the mac of vif will be updated. But during migration, the mac of vif is getting updated from xenstore(/vm/). So how about having a set_mac_address entry in netfront that update the xenstore?

So I need help, especially on #1. Is it ok to update the xenstore /vm/

keys from domU? how to do this?

I tried a bit to find out the way to update /vm/ keys from frontend, but
didn't succeed. Either way, I don't think it is a good idea to update
the xenstore key of the vif mac address, because the original mac will
be lost and we won't be able to reset it e.g. after the guest reboot.

So the attached patch adds set mac_address() support to netfront.
It doesn't touch xenstore at all, but just preserves the modified mac
address in netfront_info structure and keeps using it after migration.

Yosuke Iwamatsu
         NEC Corporation

Xen-devel mailing list