[PATCH 00/19] migration: Remove QEMUFileHooks

Juan Quintela posted 19 patches 1 year ago
Failed in applying to current master (apply log)
There is a newer version of this series
migration/meson.build       |   1 +
migration/migration-stats.c |  17 +++++
migration/migration-stats.h |  41 ++++++++++++
migration/migration.c       |  33 +++++-----
migration/multifd.c         |  10 ++-
migration/qemu-file.c       |  77 +----------------------
migration/qemu-file.h       |  51 ---------------
migration/ram.c             | 120 +++++++++++++++++++-----------------
migration/ram.h             |  24 --------
migration/rdma.c            |  82 ++++++++++++------------
migration/rdma.h            |  36 +++++++++++
migration/savevm.c          |   3 +-
12 files changed, 222 insertions(+), 273 deletions(-)
create mode 100644 migration/migration-stats.c
create mode 100644 migration/migration-stats.h
[PATCH 00/19] migration: Remove QEMUFileHooks
Posted by Juan Quintela 1 year ago
Hi

In this series (v1):
- QEMUFileHooks only had a single user, RDMA migration.  Just remove the
  hooks and create stubs for when RDMA is not compiled in.

- This implies that we have to move all the operations from
  migration/qemu-file.c to migration/rdma.c.

- I now we can still simplify rdma_control_save_page(), but I don't
  have an easy setup for testing.

- Yes, the goal of the whole operations is to be able to move
  ram_file_limit from qemu-file to migration.c.

Please review.

Thanks, Juan.

Juan Quintela (19):
  multifd: We already account for this packet on the multifd thread
  migration: Move ram_stats to its own file migration-stats.[ch]
  migration: Rename ram_counters to mig_stats
  migration: Rename RAMStats to MigrationAtomicStats
  migration/rdma: Split the zero page case from acct_update_position
  migration/rdma: Unfold last user of acct_update_position()
  migration/rdma: Unflod ram_control_before_iterate()
  migration/rdma: Unflod ram_control_after_iterate()
  migration/rdma: simplify ram_control_load_hook()
  migration/rdma: Don't pass the QIOChannelRDMA as an opaque
  migration/rdma: We can calculate the rioc from the QEMUFile
  migration/rdma: It makes no sense to recive that flag without RDMA
  migration: Make RAM_SAVE_FLAG_HOOK a normal case entry
  migration/rdma: Remove all uses of RAM_CONTROL_HOOK
  migration/rdma: Unfold hook_ram_load()
  migration/rdma: Make ram_control_save_page() use exported interfaces
  migration/rdma: Create rdma_control_save_page()
  qemu-file: Remove QEMUFileHooks
  migration/rdma: Move rdma constants from qemu-file.h to rdma.h

 migration/meson.build       |   1 +
 migration/migration-stats.c |  17 +++++
 migration/migration-stats.h |  41 ++++++++++++
 migration/migration.c       |  33 +++++-----
 migration/multifd.c         |  10 ++-
 migration/qemu-file.c       |  77 +----------------------
 migration/qemu-file.h       |  51 ---------------
 migration/ram.c             | 120 +++++++++++++++++++-----------------
 migration/ram.h             |  24 --------
 migration/rdma.c            |  82 ++++++++++++------------
 migration/rdma.h            |  36 +++++++++++
 migration/savevm.c          |   3 +-
 12 files changed, 222 insertions(+), 273 deletions(-)
 create mode 100644 migration/migration-stats.c
 create mode 100644 migration/migration-stats.h

-- 
2.40.0