From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
To: Juan Quintela <quintela@redhat.com>
Cc: qemu-devel@nongnu.org, lvivier@redhat.com, peterx@redhat.com,
zhang.zhanghailiang@huawei.com
Subject: Re: [Qemu-devel] [PATCH 2/3] migration: Remove use of old MigrationParams
Date: Fri, 28 Apr 2017 17:55:22 +0100 [thread overview]
Message-ID: <20170428165522.GG3276@work-vm> (raw)
In-Reply-To: <20170425103049.4073-3-quintela@redhat.com>
* Juan Quintela (quintela@redhat.com) wrote:
> We have change in the previous patch to use migration capabilities for
> it. Notice that we continue using the old command line flags from
> migrate command from the time being. Remove the set_params method as
> now it is empty.
>
> Signed-off-by: Juan Quintela <quintela@redhat.com>
> ---
> include/migration/migration.h | 3 +--
> migration/block.c | 17 ++---------------
> migration/colo.c | 3 ---
> migration/migration.c | 8 +++++---
> migration/savevm.c | 2 --
> 5 files changed, 8 insertions(+), 25 deletions(-)
>
> diff --git a/migration/colo.c b/migration/colo.c
> index c19eb3f..5c6c2f0 100644
> --- a/migration/colo.c
> +++ b/migration/colo.c
> @@ -332,9 +332,6 @@ static int colo_do_checkpoint_transaction(MigrationState *s,
> goto out;
> }
>
> - /* Disable block migration */
> - s->params.blk = 0;
> - s->params.shared = 0;
Hmm you don't seem to have replaced this with anything.
I think that's a behavioural change; the trick COLO did (I'm not sure if this
is still the way it works) is that they initiate the first migration
with block migration enabled so that the two hosts (with non-shared storage)
get sync'd storage, and then at the completion of that first migration
they then switch into the checkpointing mode where they're only
doing updates - that's why it gets switched off at this point
prior to the 1st checkpoint.
Dave
> qemu_savevm_state_header(fb);
> qemu_savevm_state_begin(fb, &s->params);
> qemu_mutex_lock_iothread();
> diff --git a/migration/migration.c b/migration/migration.c
> index 775b24c..9b96f1a 100644
> --- a/migration/migration.c
> +++ b/migration/migration.c
> @@ -787,6 +787,10 @@ void qmp_migrate_set_capabilities(MigrationCapabilityStatusList *params,
> s->enabled_capabilities[cap->value->capability] = cap->value->state;
> }
>
> + if (s->enabled_capabilities[MIGRATION_CAPABILITY_BLOCK_SHARED]) {
> + s->enabled_capabilities[MIGRATION_CAPABILITY_BLOCK_ENABLED] = true;
> + }
> +
> if (migrate_postcopy_ram()) {
> if (migrate_use_compression()) {
> /* The decompression threads asynchronously write into RAM
> @@ -1214,9 +1218,6 @@ void qmp_migrate(const char *uri, bool has_blk, bool blk,
> MigrationParams params;
> const char *p;
>
> - params.blk = has_blk && blk;
> - params.shared = has_inc && inc;
> -
> if (migration_is_setup_or_active(s->state) ||
> s->state == MIGRATION_STATUS_CANCELLING ||
> s->state == MIGRATION_STATUS_COLO) {
> @@ -1239,6 +1240,7 @@ void qmp_migrate(const char *uri, bool has_blk, bool blk,
> }
>
> if (has_inc && inc) {
> + migrate_set_block_enabled(s);
> migrate_set_block_shared(s);
> }
>
> diff --git a/migration/savevm.c b/migration/savevm.c
> index 0c01988..102b11d 100644
> --- a/migration/savevm.c
> +++ b/migration/savevm.c
> @@ -1233,8 +1233,6 @@ static int qemu_savevm_state(QEMUFile *f, Error **errp)
> {
> int ret;
> MigrationParams params = {
> - .blk = 0,
> - .shared = 0
> };
> MigrationState *ms = migrate_init(¶ms);
> MigrationStatus status;
> --
> 2.9.3
>
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
next prev parent reply other threads:[~2017-04-28 16:55 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-25 10:30 [Qemu-devel] [PATCH 0/3] Remove old MigrationParams Juan Quintela
2017-04-25 10:30 ` [Qemu-devel] [PATCH 1/3] migration: Create block capabilities for shared and enable Juan Quintela
2017-04-25 10:30 ` [Qemu-devel] [PATCH 2/3] migration: Remove use of old MigrationParams Juan Quintela
2017-04-28 16:55 ` Dr. David Alan Gilbert [this message]
2017-05-04 8:51 ` Juan Quintela
2017-05-04 9:14 ` Hailiang Zhang
2017-05-11 16:33 ` Juan Quintela
2017-05-12 2:02 ` Hailiang Zhang
2017-04-28 18:49 ` Eric Blake
2017-04-25 10:30 ` [Qemu-devel] [PATCH 3/3] migration: Remove " Juan Quintela
2017-04-28 16:57 ` Dr. David Alan Gilbert
-- strict thread matches above, loose matches on Subject: below --
2017-05-11 16:32 [Qemu-devel] [PATCH v2 0/3] " Juan Quintela
2017-05-11 16:32 ` [Qemu-devel] [PATCH 2/3] migration: Remove use of " Juan Quintela
2017-05-12 3:40 ` Peter Xu
2017-05-12 10:55 ` Juan Quintela
2017-05-12 19:59 ` Eric Blake
2017-05-15 9:48 ` Juan Quintela
2017-05-15 10:43 ` Dr. David Alan Gilbert
2017-05-15 14:28 ` Eric Blake
2017-05-15 15:59 ` Juan Quintela
2017-05-15 16:06 ` Markus Armbruster
2017-05-15 16:33 ` Juan Quintela
2017-05-15 16:38 ` Dr. David Alan Gilbert
2017-05-15 16:56 ` Juan Quintela
2017-05-15 17:27 ` Dr. David Alan Gilbert
2017-05-15 17:35 ` Juan Quintela
2017-05-15 17:38 ` Dr. David Alan Gilbert
2017-05-15 17:45 ` Juan Quintela
2017-05-15 18:32 ` Dr. David Alan Gilbert
2017-05-16 7:25 ` Markus Armbruster
2017-05-16 8:00 ` Juan Quintela
2017-05-15 10:05 ` Peter Xu
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=20170428165522.GG3276@work-vm \
--to=dgilbert@redhat.com \
--cc=lvivier@redhat.com \
--cc=peterx@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=quintela@redhat.com \
--cc=zhang.zhanghailiang@huawei.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).