[Top][All Lists]

[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


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.


- 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.


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(-)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]