From: Juan Quintela <quintela@redhat.com>
To: qemu-devel@nongnu.org
Cc: Laurent Vivier <lvivier@redhat.com>,
Thomas Huth <thuth@redhat.com>,
Juan Quintela <quintela@redhat.com>,
Markus Armbruster <armbru@redhat.com>,
"Dr. David Alan Gilbert" <dgilbert@redhat.com>,
Paolo Bonzini <pbonzini@redhat.com>
Subject: [Qemu-devel] [PATCH v4 0/6] Multifd compression support
Date: Wed, 12 Jun 2019 12:53:17 +0200 [thread overview]
Message-ID: <20190612105323.7051-1-quintela@redhat.com> (raw)
v4:
- improve the code left and right
- use the MIGRATION_FLAG_SYNC
- use qerrors properly
- pass errors everywhere (no more printfs)
- create cleanup/save operations
- merged zlib patches into one
- general patches alreody on the migration pull request.
- commented all the methods.
ToDo: Didn't add the sztd compression because I changed the zlib
code/methods quite a bit.
My understanding is that all the issues are gone.
v3:
- improve the code
- address David and Markus comments
- make compression code into methods
so we can add any other method ading just three functions
Please review, as far as I know everything is ok now.
Todo: Add zstd support
v2:
- improve the code left and right
- Split better the zlib code
- rename everything to v4.1
- Add tests for multifd-compress zlib
- Parameter is now an enum (soon will see sztd)
ToDo:
- Make operations for diferent methods:
* multifd_prepare_send_none/zlib
* multifd_send_none/zlib
* multifd_recv_none/zlib
- Use the MULTIFD_FLAG_ZLIB (it is unused so far).
Please review and comment.
v1:
This series create compression code on top of multifd. It is still
WIP, but it is already:
- faster that current compression code
- it does the minimum amount of copies possible
- we allow support for other compression codes
- it pass the multifd test sent in my previous series
Test for existing code didn't work because code is too slow, I need to
make downtime 10 times bigger to make it to converge on my test
machine. This code works with same limits that multifd no-
ToDo:
- move printf's to traces
- move code to a struct instead of if (zlib) inside the main threads.
- improve error handling.
Please, review and coment.
Juan Quintela (6):
migration-test: introduce functions to handle string parameters
migration: Make multifd_save_setup() get an Error parameter
migration: Make multifd_load_setup() get an Error parameter
migration: Add multifd-compress parameter
migration: Make no compression operations into its own structure
migration: Add zlib compression multifd support
hmp.c | 13 +
hw/core/qdev-properties.c | 13 +
include/hw/qdev-properties.h | 3 +
migration/migration.c | 34 ++-
migration/migration.h | 3 +-
migration/ram.c | 454 ++++++++++++++++++++++++++++++++++-
migration/ram.h | 4 +-
migration/rdma.c | 2 +-
qapi/migration.json | 30 ++-
tests/migration-test.c | 54 ++++-
10 files changed, 585 insertions(+), 25 deletions(-)
--
2.21.0
next reply other threads:[~2019-06-12 11:14 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-12 10:53 Juan Quintela [this message]
2019-06-12 10:53 ` [Qemu-devel] [PATCH v4 1/6] migration-test: introduce functions to handle string parameters Juan Quintela
2019-06-12 10:53 ` [Qemu-devel] [PATCH v4 2/6] migration: Make multifd_save_setup() get an Error parameter Juan Quintela
2019-06-12 10:53 ` [Qemu-devel] [PATCH v4 3/6] migration: Make multifd_load_setup() " Juan Quintela
2019-06-12 10:53 ` [Qemu-devel] [PATCH v4 4/6] migration: Add multifd-compress parameter Juan Quintela
2019-06-12 10:53 ` [Qemu-devel] [PATCH v4 5/6] migration: Make no compression operations into its own structure Juan Quintela
2019-06-14 11:26 ` Dr. David Alan Gilbert
2019-06-14 17:33 ` Juan Quintela
2019-06-12 10:53 ` [Qemu-devel] [PATCH v4 6/6] migration: Add zlib compression multifd support Juan Quintela
2019-06-14 12:56 ` Dr. David Alan Gilbert
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=20190612105323.7051-1-quintela@redhat.com \
--to=quintela@redhat.com \
--cc=armbru@redhat.com \
--cc=dgilbert@redhat.com \
--cc=lvivier@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=thuth@redhat.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).