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


Re: [Xen-devel] vbd flushing during migration?

To: Andrew Warfield <andrew.warfield@xxxxxxxxxxxx>
Subject: Re: [Xen-devel] vbd flushing during migration?
From: John Byrne <john.l.byrne@xxxxxx>
Date: Mon, 31 Jul 2006 15:26:57 -0700
Cc: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Mon, 31 Jul 2006 15:27:27 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <eacc82a40607311256s79c6b2a8tbdae53f6761fd39@xxxxxxxxxxxxxx>
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: <44CE5C89.4070602@xxxxxx> <eacc82a40607311256s79c6b2a8tbdae53f6761fd39@xxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird (X11/20060516)
It would be a bit ugly, but mostly straightforward to watch for the destruction of the vbds (or all devices) after the destroyDomain() is done and then sending an all-clear. (The last time I looked there wasn't a waitForDomainDestroy() anywhere, so it would probably be best to write one.) This would guarantee correctness: which is the most important thing.

The problem I see with that strategy is the effect on downtime during a live-move. Ideally you'd like to start the vbd cleanup when the final suspend is done and hope to parallelize the any final device operations with the final pass of live-move. How to do that and play nice with domain destruction on the normal path and handle errors seems a lot less clear to me.

So, are you just ignoring the notion of minimizing downtime for the moment or is there something I'm missing?


Andrew Warfield wrote:
It's slightly more than a flush that's required.  The migration
protocol needs to be extended so that execution on the target host
doesn't start until all of the outstanding (i.e. issued by the
backend) block requests have been either cancelled or acknowledged.
This should be pretty straight forward given that the backend driver
ref counts a blkif's state based on pending requests, and won't tear
down the backend directory in xenstore until all the outstanding
requests have cleared.  All that is likely required is to have the
migration code register watches on the backend vbd directories, and
wait for them to disappear before giving the all-clear to the new

We've talked about this enough to know how to fix it, but haven't had
a chance to hack it up.  (I think Julian has looked into the problem a
bit for blktap, but not yet done a general fix.) Patches would
certainly be welcome though. ;)


On 7/31/06, John Byrne <john.l.byrne@xxxxxx> wrote:


I don't see any obvious flush to disk taking place for vbd's on the
source host in XendCheckpoint.py before the domain is started on the new
host. Is there a guarantee that all written data is on disk somewhere
else or is something needed?


John Byrne

Xen-devel mailing list

Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>