[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFC 0/7] migration patches for VFIO
From: |
Juan Quintela |
Subject: |
[RFC 0/7] migration patches for VFIO |
Date: |
Mon, 3 Oct 2022 05:15:53 +0200 |
Hi
VFIO migration has several requirements:
- the size of the state is only known when the guest is stopped
- they need to send possible lots of data.
this series only address the 1st set of problems.
What they do:
- res_compatible parameter was not used anywhere, just add that information to
res_postcopy.
- Remove QEMUFILE parameter from save_live_pending
- Split save_live_pending into
* save_pending_estimate(): the pending state size without trying too hard
* save_pending_exact(): the real pending state size, it is called with the
guest stopped.
- Now save_pending_* don't need the threshold parameter
- HACK a way to stop the guest before moving there.
ToDo:
- autoconverge test is broken, no real clue why, but it is possible that the
test is wrong.
- Make an artifact to be able to send massive amount of data in the save state
stage (probably more multifd channels).
- Be able to not having to start the guest between cheking the state pending
size and migration_completion().
Please review.
Thanks, Juan.
Juan Quintela (7):
migration: Remove res_compatible parameter
migration: No save_live_pending() method uses the QEMUFile parameter
migration: Block migration comment or code is wrong
migration: Split save_live_pending() into state_pending_*
migration: Remove unused threshold_size parameter
migration: simplify migration_iteration_run()
migration: call qemu_savevm_state_pending_exact() with the guest
stopped
docs/devel/migration.rst | 18 ++++++------
docs/devel/vfio-migration.rst | 4 +--
include/migration/register.h | 29 ++++++++++---------
migration/savevm.h | 8 +++---
hw/s390x/s390-stattrib.c | 11 ++++---
hw/vfio/migration.c | 17 +++++------
migration/block-dirty-bitmap.c | 14 ++++-----
migration/block.c | 17 ++++++-----
migration/migration.c | 52 ++++++++++++++++++++++------------
migration/ram.c | 35 ++++++++++++++++-------
migration/savevm.c | 37 +++++++++++++++++-------
tests/qtest/migration-test.c | 3 +-
hw/vfio/trace-events | 2 +-
migration/trace-events | 7 +++--
14 files changed, 148 insertions(+), 106 deletions(-)
--
2.37.2
- [RFC 0/7] migration patches for VFIO,
Juan Quintela <=
- [RFC 1/7] migration: Remove res_compatible parameter, Juan Quintela, 2022/10/02
- [RFC 3/7] migration: Block migration comment or code is wrong, Juan Quintela, 2022/10/02
- [RFC 2/7] migration: No save_live_pending() method uses the QEMUFile parameter, Juan Quintela, 2022/10/02
- [RFC 4/7] migration: Split save_live_pending() into state_pending_*, Juan Quintela, 2022/10/02
- [RFC 5/7] migration: Remove unused threshold_size parameter, Juan Quintela, 2022/10/02
- [RFC 6/7] migration: simplify migration_iteration_run(), Juan Quintela, 2022/10/02
- [RFC 7/7] migration: call qemu_savevm_state_pending_exact() with the guest stopped, Juan Quintela, 2022/10/02