qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Xu <peterx@redhat.com>
To: Steven Sistare <steven.sistare@oracle.com>
Cc: Fabiano Rosas <farosas@suse.de>,
	"Daniel P. Berrange" <berrange@redhat.com>,
	qemu-devel@nongnu.org
Subject: Re: cpr-transfer with caveats
Date: Fri, 25 Oct 2024 11:47:15 -0400	[thread overview]
Message-ID: <Zxu9g_pZo1KdBl3S@x1n> (raw)
In-Reply-To: <87b1beba-4e03-45c7-b6ce-2772dcb117d1@oracle.com>

On Fri, Oct 25, 2024 at 11:01:27AM -0400, Steven Sistare wrote:
> Hi Peter, are you OK if we proceed with cpr-transfer as is, without the
> precreate phase?  Here are the problems that motivated it:
> 
> * migration test wants to enable migration events on the dest.
>   fix: enable on dest qemu using -global.  only for the test.

If it's to be documented that cpr-transfer allows no migration parameter /
cap setup, then the test case should follow, IMHO, rather than enabling
anything from cmdline.

I hope that's trivial if we can have MigrateCommon.disable_events, for
example, then only cpr selects it.

> 
> * migration test needs to fetch the dynamically assigned migration
>     listen port number
>   Fix: require unix domain socket for cpr-transfer, or a fixed port
>   number. Document it.

Fixed port is probably not a good idea.. requires unix sockets looks fine.

But then again the whole point previously having -cpr-uri together with
-incoming (IIRC, from your previous email) is to have that flexibility to
use non-unix too.  Now I am not sure whether it is still needed to be
separate just that you'll still need to rely on SIGHUP just because
precreate is gone.

> 
> * migration test hangs connecting to the qtest socket.
>   fix: in the qtest code, defer connection.

Not sure how much change here, hopefully still manageable.

From use case POV shouldn't be a huge issue, if we don't use -qtest in
production anyway.

> 
> Document that one cannot set migration caps or params on the dest
> for cpr-transfer.

This also needs to be reviewed by Dan, on impact of Libvirt initiating the
dest QEMU instance with QMP all dead before a "migrate" on src.  I'm not
sure whether Libvirt will also do early setup like what our qtest does to
enable events and so on, assuming QMP available since the start.

> 
> Document that for -incoming defer, mgmt must send the migrate command
> to the src first (so dest reads cpr state and progresses to start the
> monitor), then send the hotplug monitor commands to the dest.
> 
> Daniel, are you OK with that last bit?
> 
> - Steve
> 

-- 
Peter Xu



  reply	other threads:[~2024-10-25 15:48 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-25 15:01 cpr-transfer with caveats Steven Sistare
2024-10-25 15:47 ` Peter Xu [this message]
2024-10-25 18:14   ` Steven Sistare
2024-10-25 15:54 ` Daniel P. Berrangé
2024-10-25 18:19   ` Steven Sistare

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=Zxu9g_pZo1KdBl3S@x1n \
    --to=peterx@redhat.com \
    --cc=berrange@redhat.com \
    --cc=farosas@suse.de \
    --cc=qemu-devel@nongnu.org \
    --cc=steven.sistare@oracle.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).