[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 00/16] Multifd v4
From: |
Juan Quintela |
Subject: |
[Qemu-devel] [PATCH 00/16] Multifd v4 |
Date: |
Mon, 13 Mar 2017 13:44:18 +0100 |
Hi
This is the 4th version of multifd. Changes:
- XBZRLE don't need to be checked for
- Documentation and defaults are consistent
- split socketArgs
- use iovec instead of creating something similar.
- We use now the exported size of target page (another HACK removal)
- created qio_chanel_{wirtev,readv}_all functions. the _full() name
was already taken.
What they do is the same that the without _all() function, but if it
returns due to blocking it redo the call.
- it is checkpatch.pl clean now.
Please comment, Juan.
[v3]
- comments for previous verion addressed
- lots of bugs fixed
- remove DPRINTF from ram.c
- add multifd-group parameter, it gives how many pages we sent each
time to the worker threads. I am open to better names.
- Better flush support.
- with migration_set_speed 2G it is able to migrate "stress -vm 2
-vm-bytes 512M" over loopback.
Please review.
Thanks, Juan.
[v2]
This is a version against current code. It is based on top of QIO
work. It improves the thread synchronization and fixes the problem
when we could have two threads handing the same page.
Please comment, Juan.
Juan Quintela (16):
qio: create new qio_channel_write_all
qio: create new qio_channel_read_all
migration: Test for disabled features on reception
migration: Don't create decompression threads if not enabled
migration: Add multifd capability
migration: Create x-multifd-threads parameter
migration: Create x-multifd-group parameter
migration: Create multifd migration threads
migration: Start of multiple fd work
migration: Create ram_multifd_page
migration: Really use multiple pages at a time
migration: Send the fd number which we are going to use for this page
migration: Create thread infrastructure for multifd recv side
migration: Test new fd infrastructure
migration: Transfer pages over new channels
migration: Flush receive queue
hmp.c | 18 ++
include/io/channel.h | 46 ++++
include/migration/migration.h | 17 ++
io/channel.c | 76 ++++++
migration/migration.c | 85 ++++++-
migration/qemu-file-channel.c | 29 +--
migration/ram.c | 522 +++++++++++++++++++++++++++++++++++++++++-
migration/socket.c | 67 +++++-
qapi-schema.json | 30 ++-
9 files changed, 848 insertions(+), 42 deletions(-)
--
2.9.3
- [Qemu-devel] [PATCH 00/16] Multifd v4,
Juan Quintela <=
- [Qemu-devel] [PATCH 01/16] qio: create new qio_channel_write_all, Juan Quintela, 2017/03/13
- [Qemu-devel] [PATCH 03/16] migration: Test for disabled features on reception, Juan Quintela, 2017/03/13
- [Qemu-devel] [PATCH 04/16] migration: Don't create decompression threads if not enabled, Juan Quintela, 2017/03/13
- [Qemu-devel] [PATCH 02/16] qio: create new qio_channel_read_all, Juan Quintela, 2017/03/13
- [Qemu-devel] [PATCH 05/16] migration: Add multifd capability, Juan Quintela, 2017/03/13
- [Qemu-devel] [PATCH 07/16] migration: Create x-multifd-group parameter, Juan Quintela, 2017/03/13