qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RFC PATCH v1 1/1] migration: Disable postcopy + multifd migration


From: Daniel P . Berrangé
Subject: Re: [RFC PATCH v1 1/1] migration: Disable postcopy + multifd migration
Date: Thu, 30 Mar 2023 15:20:14 +0100
User-agent: Mutt/2.2.9 (2022-11-12)

On Mon, Mar 27, 2023 at 01:15:18PM -0300, Leonardo Bras wrote:
> Since the introduction of multifd, it's possible to perform a multifd
> migration and finish it using postcopy.
> 
> A bug introduced by yank (fixed on cfc3bcf373) was previously preventing
> a successful use of this migration scenario, and now it should be
> working on most cases.
> 
> But since there is not enough testing/support nor any reported users for
> this scenario, we should disable this combination before it may cause any
> problems for users.

Clearly we don't have enough testing, but multifd+postcopy looks
like a clearly useful scenario that we should be supporting.

Every post-copy starts with at least one pre-copy iteration, and
using multifd for that will be important for big VMs where single
threaded pre-copy is going to be CPU bound. The greater amount we
can transfer in the pre-copy phase, the less page faults / latency
spikes postcopy is going to see.

In terms of migration usage, my personal recommendation to mgmt
apps would be that they should always enable the post-copy feature
when starting a migration. Even if they expect to try to get it to
complete using exclusively pre-copy in the common case, its useful
to have post-copy capability flag enabled, as a get out of jail
free card. ie if migration ends up getting stuck in non-convergance,
or they have a sudden need to urgently complete the migration it is
good to be able to flip to post-copy mode.

I'd suggest that we instead add a multifd+postcopy test case to
migration-test.c and tackle any bugs it exposes. By blocking it
unconditionally we ensure no one will exercise it to expose any
further bugs.

> Suggested-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
> Signed-off-by: Leonardo Bras <leobras@redhat.com>
> ---
>  migration/migration.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/migration/migration.c b/migration/migration.c
> index ae2025d9d8..c601964b0e 100644
> --- a/migration/migration.c
> +++ b/migration/migration.c
> @@ -1356,6 +1356,11 @@ static bool migrate_caps_check(bool *cap_list,
>              error_setg(errp, "Postcopy is not compatible with 
> ignore-shared");
>              return false;
>          }
> +
> +        if (cap_list[MIGRATION_CAPABILITY_MULTIFD]) {
> +            error_setg(errp, "Postcopy is not yet compatible with multifd");
> +            return false;
> +        }
>      }
>  
>      if (cap_list[MIGRATION_CAPABILITY_BACKGROUND_SNAPSHOT]) {
> -- 
> 2.40.0
> 
> 

With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




reply via email to

[Prev in Thread] Current Thread [Next in Thread]