[PATCH 0/6] migration: Add 'no-ram' and 'ram-only' cpabilities

Nikita Lapshin posted 6 patches 2 years, 4 months ago
Test checkpatch failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20211224111148.345438-1-nikita.lapshin@virtuozzo.com
Maintainers: Juan Quintela <quintela@redhat.com>, Eric Blake <eblake@redhat.com>, Eduardo Habkost <eduardo@habkost.net>, Cleber Rosa <crosa@redhat.com>, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, "Dr. David Alan Gilbert" <dgilbert@redhat.com>, Markus Armbruster <armbru@redhat.com>
migration/migration.c                         | 29 +++++-
migration/migration.h                         |  2 +
migration/ram.c                               |  6 ++
migration/savevm.c                            | 63 ++++++------
qapi/migration.json                           | 11 ++-
scripts/analyze-migration.py                  | 19 ++--
.../tests/migrate-ram-capabilities-test       | 96 +++++++++++++++++++
.../tests/migrate-ram-capabilities-test.out   |  5 +
8 files changed, 192 insertions(+), 39 deletions(-)
create mode 100755 tests/qemu-iotests/tests/migrate-ram-capabilities-test
create mode 100644 tests/qemu-iotests/tests/migrate-ram-capabilities-test.out
[PATCH 0/6] migration: Add 'no-ram' and 'ram-only' cpabilities
Posted by Nikita Lapshin 2 years, 4 months ago
We want to implement exteranl bg-snapshot tool for saving RAM. For this it
is important to be able manage migration stream because tool has no idea
about non-RAM part and its size.

Possible solution is to send RAM separately. This can be done with
implemented RAM capabilities. These capabilities allow to send only RAM part
or non-RAM part so tool can save non-RAM part without special handlers.
RAM will be saved with special handlers for postcopy load.

Nikita Lapshin (6):
  migration: is_ram changed to is_iterable
  migration: should_skip() implemented
  migration: Add no-ram capability
  migration: Add ram-only capability
  migration: analyze-migration script changed
  migration: Test for ram capabilities

 migration/migration.c                         | 29 +++++-
 migration/migration.h                         |  2 +
 migration/ram.c                               |  6 ++
 migration/savevm.c                            | 63 ++++++------
 qapi/migration.json                           | 11 ++-
 scripts/analyze-migration.py                  | 19 ++--
 .../tests/migrate-ram-capabilities-test       | 96 +++++++++++++++++++
 .../tests/migrate-ram-capabilities-test.out   |  5 +
 8 files changed, 192 insertions(+), 39 deletions(-)
 create mode 100755 tests/qemu-iotests/tests/migrate-ram-capabilities-test
 create mode 100644 tests/qemu-iotests/tests/migrate-ram-capabilities-test.out

-- 
2.27.0