All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ian Campbell <Ian.Campbell@citrix.com>
To: Andrew Cooper <andrew.cooper3@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 16:44:43 +0000	[thread overview]
Message-ID: <1417020283.11944.65.camel@citrix.com> (raw)
In-Reply-To: <5474DE5A.2060000@citrix.com>

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.

Ian. 

  parent reply	other threads:[~2014-11-26 16:44 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 [this message]
2014-11-26 17:22   ` Andrew Cooper
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=1417020283.11944.65.camel@citrix.com \
    --to=ian.campbell@citrix.com \
    --cc=Ian.Jackson@eu.citrix.com \
    --cc=JBeulich@suse.com \
    --cc=JGross@suse.com \
    --cc=andrew.cooper3@citrix.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.