From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Ian Campbell <Ian.Campbell@citrix.com>,
Ian Jackson <Ian.Jackson@eu.citrix.com>
Cc: Juergen Gross <JGross@suse.com>, Wei Liu <wei.liu2@citrix.com>,
Tim Deegan <tim@xen.org>,
Xen-devel List <xen-devel@lists.xen.org>,
Ross Lagerwall <ross.lagerwall@citrix.com>,
David Vrabel <david.vrabel@citrix.com>,
Jan Beulich <JBeulich@suse.com>,
Shriram Rajagopalan <rshriram@cs.ubc.ca>,
Hongyang Yang <yanghy@cn.fujitsu.com>
Subject: Re: [Planning for Xen-4.6] Migration v2
Date: Wed, 26 Nov 2014 17:22:30 +0000 [thread overview]
Message-ID: <54760C56.3050907@citrix.com> (raw)
In-Reply-To: <1417020283.11944.65.camel@citrix.com>
On 26/11/14 16:44, Ian Campbell wrote:
> On Tue, 2014-11-25 at 19:54 +0000, Andrew Cooper wrote:
>> There is an xl/libxl part of the migration v2 series which attempts to
>> rectify this all in one go, as there is no alternative way of doing so.
>> The libxl section of the series is certainly not yet complete, but
>> specific queries to the maintainers have thusfar gone unanswered. On
>> the other hand, the series does basically WorkForMe, including
>> transparent legacy upgrade, suggesting that it is at least in an
>> appropriate ballpark.
> Is this, from "[PATCH 27/29] [VERY RFC] tools/libxl: Support restoring
> legacy streams":
>
> This WorksForMe in the success case, but the error handling is certainly lacking.
>
> Specifically, the conversion scripts output fd can't be closed until the v2
> read loop has exited (cleanly or otherwise), without risking a close()/open()
> race silently replacing the fd behind the loops back.
>
> However, it can't be closed when the read loop exits, as the conversion script
> child might still be alive, and would prefer terminating cleaning than failing
> with a bad FD.
>
> Obviously, having one error handler block for the success/failure of the other
> side is a no-go, and would still involve a preselecting which was expected to
> exit first.
>
> Does anyone have any clever ideas of how to asynchronously collect the events
> "the conversion script has exited", "the save helper has exited" and "the v2
> read loop has finished" given the available infrastructure, to kick of a
> combined cleanup of all 3?
>
> ? I said then:
>
> This is probably one for Ian when he gets back, but a state machine
> which is cranked in response to the callbacks from the various
> completion events might be one way to approach this.
>
> Prodding Ian again (by moving to the To: line...)
>
> Was there any other questions? I've had a scrobble through the bit of v7
> which 00/29 suggests might contain them, but that's the only one I saw.
I think that was the main one. To the best of my understanding, there
is nowhere else in libxl which currently does multiple child management.
There were some other questions about the datacopier stuff, but that has
changed given the remus libxl changed. I am happy for those to be
deferred by one iteration of the series and see what falls out in the wash.
~Andrew
next prev parent reply other threads:[~2014-11-26 17:22 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-25 19:54 [Planning for Xen-4.6] Migration v2 Andrew Cooper
2014-11-26 8:09 ` Olaf Hering
2014-11-26 13:17 ` Andrew Cooper
2014-11-26 14:53 ` Olaf Hering
2014-11-26 16:44 ` Ian Campbell
2014-11-26 17:22 ` Andrew Cooper [this message]
2014-11-26 16:50 ` Ian Campbell
2014-11-26 17:39 ` Andrew Cooper
2014-11-27 8:46 ` Ian Campbell
2014-11-27 8:33 ` Hongyang Yang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=54760C56.3050907@citrix.com \
--to=andrew.cooper3@citrix.com \
--cc=Ian.Campbell@citrix.com \
--cc=Ian.Jackson@eu.citrix.com \
--cc=JBeulich@suse.com \
--cc=JGross@suse.com \
--cc=david.vrabel@citrix.com \
--cc=ross.lagerwall@citrix.com \
--cc=rshriram@cs.ubc.ca \
--cc=tim@xen.org \
--cc=wei.liu2@citrix.com \
--cc=xen-devel@lists.xen.org \
--cc=yanghy@cn.fujitsu.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.