All of lore.kernel.org
 help / color / mirror / Atom feed
From: Fabiano Rosas <farosas@suse.de>
To: Peter Xu <peterx@redhat.com>, Steven Sistare <steven.sistare@oracle.com>
Cc: qemu-devel@nongnu.org, "Juan Quintela" <quintela@redhat.com>,
	"Daniel P. Berrange" <berrange@redhat.com>,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>
Subject: Re: [PATCH V2] migration: file URI
Date: Wed, 14 Jun 2023 12:47:41 -0300	[thread overview]
Message-ID: <877cs6ujtu.fsf@suse.de> (raw)
In-Reply-To: <ZId4LggDVgxbtGTn@x1n>

Peter Xu <peterx@redhat.com> writes:

> On Mon, Jun 12, 2023 at 03:39:34PM -0400, Steven Sistare wrote:
>> On 6/12/2023 2:44 PM, Peter Xu wrote:
>> > Hi, Steve,
>> > 
>> > On Wed, Jun 07, 2023 at 11:38:59AM -0700, Steve Sistare wrote:
>> >> Extend the migration URI to support file:<filename>.  This can be used for
>> >> any migration scenario that does not require a reverse path.  It can be used
>> >> as an alternative to 'exec:cat > file' in minimized containers that do not
>> >> contain /bin/sh, and it is easier to use than the fd:<fdname> URI.  It can
>> >> be used in HMP commands, and as a qemu command-line parameter.
>> > 
>> > I have similar question on the fixed-ram work,
>> 
>> Sorry, what is the "fixed-ram work"?
>
> https://lore.kernel.org/all/20230330180336.2791-1-farosas@suse.de
>
> It has similar requirement to migrate to a file, though slightly different
> use case.
>
>> 
>> > on whether we should assume
>> > the vm stopped before doing so.  Again, it leaves us space for
>> > optimizations on top without breaking anyone.
>> 
>> I do not assume the vm is stopped.  The migration code will stop the vm
>> in migration_iteration_finish.
>> 
>> > The other thing is considering a very busy guest, migration may not even
>> > converge for "file:" URI (the same to other URIs) but I think that doesn't
>> > make much sense to not converge for a "file:" URI.  The user might be very
>> > confused too.
>> 
>> The file URI is mainly intended for the case where guest ram is backed by shared memory 
>> and preserved in place, in which case writes are not tracked and convergence is not an
>> issue.  If not shared memory, the user should be advised to stop the machine first.
>> I should document these notes in qemu-options and/or migration.json.
>
> My question was whether we should treat "file:" differently from most of
> other URIs.  It makes the URI slightly tricky for sure, but it also does
> make sense to me because "file:" implies more than the rest URIs, where
> we're sure about the consequence of the migration (vm stops), in that case
> keeping vm live makes it less performant, and also weird.
>
> It doesn't need to be special in memory type being shared, e.g. what if
> there's a device that contains a lot of data to migrate in the future?
> Assuming "shared memory will always migrate very fast" may not hold true.
>
> Do you think it makes more sense to just always stop VM when migrating to
> file URI?  Then if someone tries to restart the VM or cancel the migration,
> we always do both (cancel migration, then start VM).

From our discussions in the other thread, I have implemented a
MIGRATION_CAPABILITY_SUSPEND to allow the management layer to decide
whether the guest should be stopped by QEMU before the migration.

I'm not opposed to coupling file URI with a stopped VM, although I
think, at least for fixed-ram, libvirt would prefer to be able to decide
when to stop.


  reply	other threads:[~2023-06-14 15:48 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-07 18:38 [PATCH V2] migration: file URI Steve Sistare
2023-06-12 18:44 ` Peter Xu
2023-06-12 19:39   ` Steven Sistare
2023-06-12 19:55     ` Peter Xu
2023-06-14 15:47       ` Fabiano Rosas [this message]
2023-06-14 15:50         ` Peter Xu
2023-06-14 17:59           ` Fabiano Rosas
2023-06-14 18:38             ` Peter Xu
2023-06-15 14:50               ` Fabiano Rosas
2023-06-20 18:36                 ` Steven Sistare
2023-06-20 19:35                   ` Peter Xu
2023-06-21 12:40 ` Daniel P. Berrangé
2023-06-22 10:12 ` Daniel P. Berrangé
2023-06-22 12:28   ` Steven Sistare
2023-06-22 12:20 ` Fabiano Rosas
2023-06-22 20:39   ` 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=877cs6ujtu.fsf@suse.de \
    --to=farosas@suse.de \
    --cc=berrange@redhat.com \
    --cc=peterx@redhat.com \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    --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 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.