On Wed, 14 Jan 2026 15:11:55 -0500
Peter Xu <[email protected]> wrote:

> On Wed, Jan 14, 2026 at 02:56:57PM -0500, Peter Xu wrote:
> > COLO was broken for QEMU release 10.0/10.1 without anyone noticed.  One
> > reason might be that we don't have an unit test for COLO (which we
> > explicitly require now for any new migration feature).  The other reason
> > should be that there are just no more active COLO users, at least based on
> > the latest development of QEMU.
> > 
> > I don't remember seeing anything really active in the past few years in
> > COLO development.
> > 
> > Meanwhile, COLO migration framework maintainer (Hailiang Zhang)'s last
> > email to qemu-devel is in Dec 2021 where the patch proposed an email
> > change (<[email protected]>).
> > 
> > We've discussed this for a while, see latest discussions here (our thoughts
> > of deprecating COLO framework might be earlier than that, but still):
> > 
> > https://lore.kernel.org/r/[email protected]/
> > https://lore.kernel.org/r/[email protected]
> > 
> > Let's make it partly official and put COLO into deprecation list.  If
> > anyone cares about COLO and is deploying it, please send an email to
> > qemu-devel to discuss.
> > 
> > Otherwise, let's try to save some energy for either maintainers or
> > developers who is looking after QEMU. Let's save the work if we don't even
> > know what the work is for.
> > 
> > Cc: Lukáš Doktor <[email protected]>  
> 
> My apologize, I copied the wrong email.
> 
> Cc: Lukas Straub <[email protected]>

Nack.

This code has users, as explained in my other email:
https://lore.kernel.org/qemu-devel/20260115224516.7f0309ba@penguin/T/#mc99839451d6841366619c4ec0d5af5264e2f6464

Regards,
Lukas Straub

> 
> > Cc: Juan Quintela <[email protected]>
> > Cc: Dr. David Alan Gilbert <[email protected]>
> > Cc: Zhang Chen <[email protected]>
> > Cc: [email protected]
> > Cc: Li Zhijian <[email protected]>
> > Cc: Jason Wang <[email protected]>
> > Signed-off-by: Peter Xu <[email protected]>
> > ---
> >  docs/about/deprecated.rst | 6 ++++++
> >  qapi/migration.json       | 5 ++---
> >  migration/options.c       | 4 ++++
> >  3 files changed, 12 insertions(+), 3 deletions(-)
> > 
> > diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
> > index 7abb3dab59..b499b2acb0 100644
> > --- a/docs/about/deprecated.rst
> > +++ b/docs/about/deprecated.rst
> > @@ -580,3 +580,9 @@ command documentation for details on the ``fdset`` 
> > usage.
> >  
> >  The ``zero-blocks`` capability was part of the block migration which
> >  doesn't exist anymore since it was removed in QEMU v9.1.
> > +
> > +COLO migration framework (since 11.0)
> > +'''''''''''''''''''''''''''''''''''''
> > +
> > +To be removed with no replacement, as the COLO migration framework doesn't
> > +seem to have any active user for a while.
> > diff --git a/qapi/migration.json b/qapi/migration.json
> > index 201dedd982..3c868efe38 100644
> > --- a/qapi/migration.json
> > +++ b/qapi/migration.json
> > @@ -531,8 +531,7 @@
> >  #
> >  # @unstable: Members @x-colo and @x-ignore-shared are experimental.
> >  #
> > -# @deprecated: Member @zero-blocks is deprecated as being part of
> > -#     block migration which was already removed.
> > +# @deprecated: Member @zero-blocks and @x-colo are deprecated.
> >  #
> >  # Since: 1.2
> >  ##
> > @@ -540,7 +539,7 @@
> >    'data': ['xbzrle', 'rdma-pin-all', 'auto-converge',
> >             { 'name': 'zero-blocks', 'features': [ 'deprecated' ] },
> >             'events', 'postcopy-ram',
> > -           { 'name': 'x-colo', 'features': [ 'unstable' ] },
> > +           { 'name': 'x-colo', 'features': [ 'unstable', 'deprecated' ] },
> >             'release-ram',
> >             'return-path', 'pause-before-switchover', 'multifd',
> >             'dirty-bitmaps', 'postcopy-blocktime', 'late-block-activate',
> > diff --git a/migration/options.c b/migration/options.c
> > index 9a5a39c886..318850ba94 100644
> > --- a/migration/options.c
> > +++ b/migration/options.c
> > @@ -580,6 +580,10 @@ bool migrate_caps_check(bool *old_caps, bool 
> > *new_caps, Error **errp)
> >          warn_report("zero-blocks capability is deprecated");
> >      }
> >  
> > +    if (new_caps[MIGRATION_CAPABILITY_X_COLO]) {
> > +        warn_report("COLO migration framework is deprecated");
> > +    }
> > +
> >  #ifndef CONFIG_REPLICATION
> >      if (new_caps[MIGRATION_CAPABILITY_X_COLO]) {
> >          error_setg(errp, "QEMU compiled without replication module"
> > -- 
> > 2.50.1
> >   
> 

Attachment: pgpIsBhB2eFro.pgp
Description: OpenPGP digital signature

Reply via email to