* [Qemu-devel] [PULL 0/2] migration queue @ 2018-11-21 13:04 Dr. David Alan Gilbert (git) 2018-11-21 13:04 ` [Qemu-devel] [PULL 1/2] migration/colo.c: Fix compilation issue when disable replication Dr. David Alan Gilbert (git) ` (2 more replies) 0 siblings, 3 replies; 4+ messages in thread From: Dr. David Alan Gilbert (git) @ 2018-11-21 13:04 UTC (permalink / raw) To: qemu-devel, chen.zhang, zhangckid, quintela; +Cc: peterx From: "Dr. David Alan Gilbert" <dgilbert@redhat.com> The following changes since commit 47c1cc30e440860aa695358f7c2dd0b9d7b53d16: Update version for v3.1.0-rc2 release (2018-11-20 18:10:26 +0000) are available in the Git repository at: git://github.com/dagrh/qemu.git tags/pull-migration-20181121a for you to fetch changes up to 7e934f5b27eee1b0d77be3dcf1fd18d4ccc602cc: migration/migration.c: Add COLO dependency checks (2018-11-21 11:38:12 +0000) ---------------------------------------------------------------- Migration fixes 2018-11-21 Notably the fix for building with --disable-replication ---------------------------------------------------------------- Zhang Chen (2): migration/colo.c: Fix compilation issue when disable replication migration/migration.c: Add COLO dependency checks migration/colo.c | 28 +++++++++++++++++++++++++++- migration/migration.c | 9 +++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) ^ permalink raw reply [flat|nested] 4+ messages in thread
* [Qemu-devel] [PULL 1/2] migration/colo.c: Fix compilation issue when disable replication 2018-11-21 13:04 [Qemu-devel] [PULL 0/2] migration queue Dr. David Alan Gilbert (git) @ 2018-11-21 13:04 ` Dr. David Alan Gilbert (git) 2018-11-21 13:04 ` [Qemu-devel] [PULL 2/2] migration/migration.c: Add COLO dependency checks Dr. David Alan Gilbert (git) 2018-11-22 16:37 ` [Qemu-devel] [PULL 0/2] migration queue Peter Maydell 2 siblings, 0 replies; 4+ messages in thread From: Dr. David Alan Gilbert (git) @ 2018-11-21 13:04 UTC (permalink / raw) To: qemu-devel, chen.zhang, zhangckid, quintela; +Cc: peterx From: Zhang Chen <zhangckid@gmail.com> This compilation issue will occur when user use --disable-replication to config Qemu. Reported-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Zhang Chen <zhangckid@gmail.com> Message-Id: <20181101021226.6353-1-zhangckid@gmail.com> Tested-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com> --- migration/colo.c | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/migration/colo.c b/migration/colo.c index 956ac236b7..fcff04c78c 100644 --- a/migration/colo.c +++ b/migration/colo.c @@ -59,6 +59,8 @@ static bool colo_runstate_is_stopped(void) static void secondary_vm_do_failover(void) { +/* COLO needs enable block-replication */ +#ifdef CONFIG_REPLICATION int old_state; MigrationIncomingState *mis = migration_incoming_get_current(); Error *local_err = NULL; @@ -121,10 +123,14 @@ static void secondary_vm_do_failover(void) if (mis->migration_incoming_co) { qemu_coroutine_enter(mis->migration_incoming_co); } +#else + abort(); +#endif } static void primary_vm_do_failover(void) { +#ifdef CONFIG_REPLICATION MigrationState *s = migrate_get_current(); int old_state; Error *local_err = NULL; @@ -165,6 +171,9 @@ static void primary_vm_do_failover(void) /* Notify COLO thread that failover work is finished */ qemu_sem_post(&s->colo_exit_sem); +#else + abort(); +#endif } COLOMode get_colo_mode(void) @@ -415,11 +424,16 @@ static int colo_do_checkpoint_transaction(MigrationState *s, /* Disable block migration */ migrate_set_block_enabled(false, &local_err); qemu_mutex_lock_iothread(); + +#ifdef CONFIG_REPLICATION replication_do_checkpoint_all(&local_err); if (local_err) { qemu_mutex_unlock_iothread(); goto out; } +#else + abort(); +#endif colo_send_message(s->to_dst_file, COLO_MESSAGE_VMSTATE_SEND, &local_err); if (local_err) { @@ -523,11 +537,15 @@ static void colo_process_checkpoint(MigrationState *s) object_unref(OBJECT(bioc)); qemu_mutex_lock_iothread(); +#ifdef CONFIG_REPLICATION replication_start_all(REPLICATION_MODE_PRIMARY, &local_err); if (local_err) { qemu_mutex_unlock_iothread(); goto out; } +#else + abort(); +#endif vm_start(); qemu_mutex_unlock_iothread(); @@ -690,11 +708,15 @@ void *colo_process_incoming_thread(void *opaque) object_unref(OBJECT(bioc)); qemu_mutex_lock_iothread(); +#ifdef CONFIG_REPLICATION replication_start_all(REPLICATION_MODE_SECONDARY, &local_err); if (local_err) { qemu_mutex_unlock_iothread(); goto out; } +#else + abort(); +#endif vm_start(); trace_colo_vm_state_change("stop", "run"); qemu_mutex_unlock_iothread(); @@ -785,18 +807,22 @@ void *colo_process_incoming_thread(void *opaque) goto out; } +#ifdef CONFIG_REPLICATION replication_get_error_all(&local_err); if (local_err) { qemu_mutex_unlock_iothread(); goto out; } + /* discard colo disk buffer */ replication_do_checkpoint_all(&local_err); if (local_err) { qemu_mutex_unlock_iothread(); goto out; } - +#else + abort(); +#endif /* Notify all filters of all NIC to do checkpoint */ colo_notify_filters_event(COLO_EVENT_CHECKPOINT, &local_err); -- 2.19.1 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Qemu-devel] [PULL 2/2] migration/migration.c: Add COLO dependency checks 2018-11-21 13:04 [Qemu-devel] [PULL 0/2] migration queue Dr. David Alan Gilbert (git) 2018-11-21 13:04 ` [Qemu-devel] [PULL 1/2] migration/colo.c: Fix compilation issue when disable replication Dr. David Alan Gilbert (git) @ 2018-11-21 13:04 ` Dr. David Alan Gilbert (git) 2018-11-22 16:37 ` [Qemu-devel] [PULL 0/2] migration queue Peter Maydell 2 siblings, 0 replies; 4+ messages in thread From: Dr. David Alan Gilbert (git) @ 2018-11-21 13:04 UTC (permalink / raw) To: qemu-devel, chen.zhang, zhangckid, quintela; +Cc: peterx From: Zhang Chen <chen.zhang@intel.com> Current COLO mode(independent disk mode) need replication module work together. Suggested by Dr. David Alan Gilbert <dgilbert@redhat.com>. Signed-off-by: Zhang Chen <chen.zhang@intel.com> Message-Id: <20181114190912.7242-1-chen.zhang@intel.com> Reviewed-by: Peter Xu <peterx@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com> --- migration/migration.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/migration/migration.c b/migration/migration.c index b261c1e4ce..49ffb9997a 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -918,6 +918,15 @@ static bool migrate_caps_check(bool *cap_list, } #endif +#ifndef CONFIG_REPLICATION + if (cap_list[MIGRATION_CAPABILITY_X_COLO]) { + error_setg(errp, "QEMU compiled without replication module" + " can't enable COLO"); + error_append_hint(errp, "Please enable replication before COLO.\n"); + return false; + } +#endif + if (cap_list[MIGRATION_CAPABILITY_POSTCOPY_RAM]) { if (cap_list[MIGRATION_CAPABILITY_COMPRESS]) { /* The decompression threads asynchronously write into RAM -- 2.19.1 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PULL 0/2] migration queue 2018-11-21 13:04 [Qemu-devel] [PULL 0/2] migration queue Dr. David Alan Gilbert (git) 2018-11-21 13:04 ` [Qemu-devel] [PULL 1/2] migration/colo.c: Fix compilation issue when disable replication Dr. David Alan Gilbert (git) 2018-11-21 13:04 ` [Qemu-devel] [PULL 2/2] migration/migration.c: Add COLO dependency checks Dr. David Alan Gilbert (git) @ 2018-11-22 16:37 ` Peter Maydell 2 siblings, 0 replies; 4+ messages in thread From: Peter Maydell @ 2018-11-22 16:37 UTC (permalink / raw) To: Dr. David Alan Gilbert (git) Cc: QEMU Developers, Zhang Chen, Zhang Chen, Juan Quintela, Peter Xu On 21 November 2018 at 13:04, Dr. David Alan Gilbert (git) <dgilbert@redhat.com> wrote: > From: "Dr. David Alan Gilbert" <dgilbert@redhat.com> > > The following changes since commit 47c1cc30e440860aa695358f7c2dd0b9d7b53d16: > > Update version for v3.1.0-rc2 release (2018-11-20 18:10:26 +0000) > > are available in the Git repository at: > > git://github.com/dagrh/qemu.git tags/pull-migration-20181121a > > for you to fetch changes up to 7e934f5b27eee1b0d77be3dcf1fd18d4ccc602cc: > > migration/migration.c: Add COLO dependency checks (2018-11-21 11:38:12 +0000) > > ---------------------------------------------------------------- > Migration fixes 2018-11-21 > > Notably the fix for building with --disable-replication > Applied, thanks. -- PMM ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-11-22 16:38 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2018-11-21 13:04 [Qemu-devel] [PULL 0/2] migration queue Dr. David Alan Gilbert (git) 2018-11-21 13:04 ` [Qemu-devel] [PULL 1/2] migration/colo.c: Fix compilation issue when disable replication Dr. David Alan Gilbert (git) 2018-11-21 13:04 ` [Qemu-devel] [PULL 2/2] migration/migration.c: Add COLO dependency checks Dr. David Alan Gilbert (git) 2018-11-22 16:37 ` [Qemu-devel] [PULL 0/2] migration queue Peter Maydell
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).