From: Peter Xu <peterx@redhat.com>
To: Lukas Straub <lukasstraub2@web.de>
Cc: qemu-devel@nongnu.org, Fabiano Rosas <farosas@suse.de>,
Laurent Vivier <lvivier@redhat.com>,
Paolo Bonzini <pbonzini@redhat.com>,
Zhang Chen <zhangckid@gmail.com>,
Hailiang Zhang <zhanghailiang@xfusion.com>,
Markus Armbruster <armbru@redhat.com>,
Li Zhijian <lizhijian@fujitsu.com>,
"Dr. David Alan Gilbert" <dave@treblig.org>
Subject: Re: [PATCH v5 06/16] colo: Don't send ENABLE_COLO command
Date: Mon, 9 Feb 2026 11:17:41 -0500 [thread overview]
Message-ID: <aYoIpX1i_lwgQKyw@x1.local> (raw)
In-Reply-To: <20260203-colo_unit_test_multifd-v5-6-57508b7389f6@web.de>
On Tue, Feb 03, 2026 at 11:15:12AM +0100, Lukas Straub wrote:
> We only support COLO with the same version on both sides so this is
> not needed anymore.
>
> Reviewed-by: Fabiano Rosas <farosas@suse.de>
> Signed-off-by: Lukas Straub <lukasstraub2@web.de>
Besides squashing with prior patch, another nitpick inline:
> ---
> migration/migration.c | 5 -----
> migration/savevm.c | 8 +-------
> migration/savevm.h | 1 -
> migration/trace-events | 1 -
> 4 files changed, 1 insertion(+), 14 deletions(-)
>
> diff --git a/migration/migration.c b/migration/migration.c
> index 3f3fc5276bb067ae1960e4b675b33208ad641b23..5515be1bf305b40ba0b590136df18a53451872c5 100644
> --- a/migration/migration.c
> +++ b/migration/migration.c
> @@ -3496,11 +3496,6 @@ static void *migration_thread(void *opaque)
> qemu_savevm_send_postcopy_advise(s->to_dst_file);
> }
>
> - if (migrate_colo()) {
> - /* Notify migration destination that we enable COLO */
> - qemu_savevm_send_colo_enable(s->to_dst_file);
> - }
> -
> if (migrate_auto_converge()) {
> /* Start RAMBlock dirty bitmap sync timer */
> cpu_throttle_dirty_sync_timer(true);
> diff --git a/migration/savevm.c b/migration/savevm.c
> index 413688b75f4bee6cb10878eb51886cf6ba14872d..a3af09616a7bd22194ffba3cfb7cc4cf15fc88e0 100644
> --- a/migration/savevm.c
> +++ b/migration/savevm.c
> @@ -90,7 +90,7 @@ enum qemu_vm_cmd {
> were previously sent during
> precopy but are dirty. */
> MIG_CMD_PACKAGED, /* Send a wrapped stream within this stream */
> - MIG_CMD_ENABLE_COLO, /* Enable COLO */
> + MIG_CMD_UNUSED_0, /* Unused since 11.0 */
IMHO it's not "when unused" that matters, but "when it was used, and used
as what" that matters. E.g. if we received this unused command in some
future QEMU debugging session, we can guess where it came from with that info.
Hence, I'd suggest:
MIG_CMD_DEPRECATED_0, /* Prior to 10.2, used as MIG_CMD_ENABLE_COLO */
I still think DEPRECATED is better here, as it reminds people we shouldn't
"reuse" it and better be left untouched to catch surprises, where "UNSED"
may imply "you can use it now".
Other than that looks all good, thanks.
> MIG_CMD_POSTCOPY_RESUME, /* resume postcopy on dest */
> MIG_CMD_RECV_BITMAP, /* Request for recved bitmap on dst */
> MIG_CMD_SWITCHOVER_START, /* Switchover start notification */
> @@ -1092,12 +1092,6 @@ static void qemu_savevm_command_send(QEMUFile *f,
> qemu_fflush(f);
> }
>
> -void qemu_savevm_send_colo_enable(QEMUFile *f)
> -{
> - trace_savevm_send_colo_enable();
> - qemu_savevm_command_send(f, MIG_CMD_ENABLE_COLO, 0, NULL);
> -}
> -
> void qemu_savevm_send_ping(QEMUFile *f, uint32_t value)
> {
> uint32_t buf;
> diff --git a/migration/savevm.h b/migration/savevm.h
> index 125a2507b7279412bcb0745b95a774874c31c54f..0a1e5bfd1ca125565a4c90c6f31b2f8c94404117 100644
> --- a/migration/savevm.h
> +++ b/migration/savevm.h
> @@ -62,7 +62,6 @@ void qemu_savevm_send_postcopy_ram_discard(QEMUFile *f, const char *name,
> uint16_t len,
> uint64_t *start_list,
> uint64_t *length_list);
> -void qemu_savevm_send_colo_enable(QEMUFile *f);
> void qemu_savevm_live_state(QEMUFile *f);
> int qemu_save_device_state(QEMUFile *f);
>
> diff --git a/migration/trace-events b/migration/trace-events
> index 91d7506634c9f110e8f0b5f9183728058fe6542a..cfd4d58a0f82ec299ca9e8a9260dd3c3a210cece 100644
> --- a/migration/trace-events
> +++ b/migration/trace-events
> @@ -37,7 +37,6 @@ savevm_send_ping(uint32_t val) "0x%x"
> savevm_send_postcopy_listen(void) ""
> savevm_send_postcopy_run(void) ""
> savevm_send_postcopy_resume(void) ""
> -savevm_send_colo_enable(void) ""
> savevm_send_recv_bitmap(char *name) "%s"
> savevm_send_switchover_start(void) ""
> savevm_state_setup(void) ""
>
> --
> 2.39.5
>
--
Peter Xu
next prev parent reply other threads:[~2026-02-09 16:18 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-03 10:15 [PATCH v5 00/16] migration: Add COLO multifd support and COLO migration unit test Lukas Straub
2026-02-03 10:15 ` [PATCH v5 01/16] MAINTAINERS: Add myself as maintainer for COLO migration framework Lukas Straub
2026-02-03 10:15 ` [PATCH v5 02/16] MAINTAINERS: Remove Hailiang Zhang from " Lukas Straub
2026-02-03 10:15 ` [PATCH v5 03/16] colo: Setup ram cache in normal migration path Lukas Straub
2026-02-09 16:10 ` Peter Xu
2026-02-03 10:15 ` [PATCH v5 04/16] colo: Replace migration_incoming_colo_enabled() with migrate_colo() Lukas Straub
2026-02-09 16:11 ` Peter Xu
2026-02-03 10:15 ` [PATCH v5 05/16] colo: Remove ENABLE_COLO loadvm command functions Lukas Straub
2026-02-09 16:13 ` Peter Xu
2026-02-10 13:28 ` Lukas Straub
2026-02-10 14:38 ` Peter Xu
2026-02-10 15:34 ` Lukas Straub
2026-02-03 10:15 ` [PATCH v5 06/16] colo: Don't send ENABLE_COLO command Lukas Straub
2026-02-09 16:17 ` Peter Xu [this message]
2026-02-10 13:29 ` Lukas Straub
2026-02-03 10:15 ` [PATCH v5 07/16] ram: Remove colo special-casing Lukas Straub
2026-02-09 16:19 ` Peter Xu
2026-02-03 10:15 ` [PATCH v5 08/16] Move ram state receive into multifd_ram_state_recv() Lukas Straub
2026-02-09 16:20 ` Peter Xu
2026-02-03 10:15 ` [PATCH v5 09/16] multifd: Add COLO support Lukas Straub
2026-02-04 18:13 ` Fabiano Rosas
2026-02-09 16:25 ` Peter Xu
2026-02-03 10:15 ` [PATCH v5 10/16] Call colo_release_ram_cache() after multifd threads terminate Lukas Straub
2026-02-09 16:27 ` Peter Xu
2026-02-03 10:15 ` [PATCH v5 11/16] colo: Fix crash during device vmstate load Lukas Straub
2026-02-03 10:15 ` [PATCH v5 12/16] migration-test: Add COLO migration unit test Lukas Straub
2026-02-09 15:56 ` Peter Xu
2026-02-03 10:15 ` [PATCH v5 13/16] Convert colo main documentation to restructuredText Lukas Straub
2026-02-06 7:47 ` Zhang Chen
2026-02-03 10:15 ` [PATCH v5 14/16] qemu-colo.rst: Miscellaneous changes Lukas Straub
2026-02-06 7:52 ` Zhang Chen
2026-02-03 10:15 ` [PATCH v5 15/16] qemu-colo.rst: Add my copyright Lukas Straub
2026-02-03 10:15 ` [PATCH v5 16/16] qemu-colo.rst: Simplify the block replication setup Lukas Straub
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=aYoIpX1i_lwgQKyw@x1.local \
--to=peterx@redhat.com \
--cc=armbru@redhat.com \
--cc=dave@treblig.org \
--cc=farosas@suse.de \
--cc=lizhijian@fujitsu.com \
--cc=lukasstraub2@web.de \
--cc=lvivier@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=zhangckid@gmail.com \
--cc=zhanghailiang@xfusion.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.