qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Fabiano Rosas <farosas@suse.de>
To: Markus Armbruster <armbru@redhat.com>,
	Hao Xiang <hao.xiang@bytedance.com>
Cc: pbonzini@redhat.com, berrange@redhat.com, eduardo@habkost.net,
	peterx@redhat.com, eblake@redhat.com, thuth@redhat.com,
	lvivier@redhat.com, jdenemar@redhat.com,
	marcel.apfelbaum@gmail.com, philmd@linaro.org,
	wangyanan55@huawei.com, qemu-devel@nongnu.org
Subject: Re: [External] Re: [PATCH v3 2/7] migration/multifd: Implement zero page transmission on the multifd thread.
Date: Thu, 29 Feb 2024 12:46:46 -0300	[thread overview]
Message-ID: <87h6hrz315.fsf@suse.de> (raw)
In-Reply-To: <87a5nju8ro.fsf@pond.sub.org>

Markus Armbruster <armbru@redhat.com> writes:

> Hao Xiang <hao.xiang@bytedance.com> writes:
>
>> On Wed, Feb 28, 2024 at 1:50 AM Markus Armbruster <armbru@redhat.com> wrote:
>>>
>>> Hao Xiang <hao.xiang@bytedance.com> writes:
>>>
>>> > 1. Add zero_pages field in MultiFDPacket_t.
>>> > 2. Implements the zero page detection and handling on the multifd
>>> > threads for non-compression, zlib and zstd compression backends.
>>> > 3. Added a new value 'multifd' in ZeroPageDetection enumeration.
>>> > 4. Handle migration QEMU9.0 -> QEMU8.2 compatibility.
>>> > 5. Adds zero page counters and updates multifd send/receive tracing
>>> > format to track the newly added counters.
>>> >
>>> > Signed-off-by: Hao Xiang <hao.xiang@bytedance.com>
>>>
>>> [...]
>>>
>>> > diff --git a/qapi/migration.json b/qapi/migration.json
>>> > index 1e66272f8f..5a1bb8ad62 100644
>>> > --- a/qapi/migration.json
>>> > +++ b/qapi/migration.json
>>> > @@ -660,10 +660,13 @@
>>> >  #
>>> >  # @legacy: Perform zero page checking from main migration thread.
>>> >  #
>>> > +# @multifd: Perform zero page checking from multifd sender thread.
>>> > +#
>>> >  # Since: 9.0
>>> > +#
>>> >  ##
>>> >  { 'enum': 'ZeroPageDetection',
>>> > -  'data': [ 'none', 'legacy' ] }
>>> > +  'data': [ 'none', 'legacy', 'multifd' ] }
>>> >
>>> >  ##
>>> >  # @BitmapMigrationBitmapAliasTransform:
>>>
>>> What happens when you set "zero-page-detection": "multifd" *without*
>>> enabling multifd migration?
>>
>> Very good question! Right now the behavior is that if "multifd
>> migration" is not enabled, it goes through the legacy code path and
>> the "multifd zero page" option is ignored. The legacy path has its own
>> zero page checking and will run the same way as before. This is for
>> backward compatibility.
>
> We need one of two improvements then:
>
> 1. Make "zero-page-detection" reject value "multifd" when multifd
>    migration is not enabled.  Document this: "Requires migration
>    capability @multifd" or similar.
>
> 2. Document that "multifd" means multifd only when multifd is enabled,
>    else same as "legacy".
>
> I prefer 1., because it's easier to document.  But migration maintainers
> may have their own preference.  Peter, Fabiano?

I think we need to go with 2 for consistency with the other multifd_*
parameters. I don't see any validation at options.c.


  reply	other threads:[~2024-02-29 15:47 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-26 19:56 [PATCH v3 0/7] Introduce multifd zero page checking Hao Xiang
2024-02-26 19:56 ` [PATCH v3 1/7] migration/multifd: Add new migration option zero-page-detection Hao Xiang
2024-02-28  9:43   ` Markus Armbruster
2024-02-28 18:30     ` [External] " Hao Xiang
2024-02-29  5:34       ` Markus Armbruster
2024-02-26 19:56 ` [PATCH v3 2/7] migration/multifd: Implement zero page transmission on the multifd thread Hao Xiang
2024-02-28  9:45   ` Markus Armbruster
2024-02-28  9:50   ` Markus Armbruster
2024-02-28 18:45     ` [External] " Hao Xiang
2024-02-29  5:41       ` Markus Armbruster
2024-02-29 15:46         ` Fabiano Rosas [this message]
2024-03-01  1:27           ` Hao Xiang
2024-02-28 19:46   ` Fabiano Rosas
2024-03-01  1:55     ` [External] " Hao Xiang
2024-02-26 19:56 ` [PATCH v3 3/7] migration/multifd: Implement ram_save_target_page_multifd to handle multifd version of MigrationOps::ram_save_target_page Hao Xiang
2024-02-28 19:48   ` Fabiano Rosas
2024-02-26 19:56 ` [PATCH v3 4/7] migration/multifd: Enable multifd zero page checking by default Hao Xiang
2024-02-26 19:56 ` [PATCH v3 5/7] migration/multifd: Add new migration test cases for legacy zero page checking Hao Xiang
2024-02-26 19:56 ` [PATCH v3 6/7] migration/multifd: Add zero pages and zero bytes counter to migration status interface Hao Xiang
2024-02-28  9:52   ` Markus Armbruster
2024-02-28 18:36     ` [External] " Hao Xiang
2024-02-29  6:01       ` Markus Armbruster
2024-03-01  1:18         ` Hao Xiang
2024-03-01  5:53           ` Markus Armbruster
2024-02-26 19:56 ` [PATCH v3 7/7] Update maintainer contact for migration multifd zero page checking acceleration Hao Xiang
2024-02-28  9:36 ` [PATCH v3 0/7] Introduce multifd zero page checking Markus Armbruster

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=87h6hrz315.fsf@suse.de \
    --to=farosas@suse.de \
    --cc=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=eblake@redhat.com \
    --cc=eduardo@habkost.net \
    --cc=hao.xiang@bytedance.com \
    --cc=jdenemar@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=marcel.apfelbaum@gmail.com \
    --cc=pbonzini@redhat.com \
    --cc=peterx@redhat.com \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=thuth@redhat.com \
    --cc=wangyanan55@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).