[PATCH v3 00/10] migration: Remove QEMUFileHooks

Juan Quintela posted 10 patches 11 months, 3 weeks ago
Failed in applying to current master (apply log)
migration/migration.c  |   1 +
migration/migration.h  |   3 +
migration/options.c    |   7 +++
migration/options.h    |   1 +
migration/qemu-file.c  |  61 +--------------------
migration/qemu-file.h  |  49 -----------------
migration/ram.c        |  50 +++++++++++++----
migration/rdma.c       | 121 +++++++++++++++++++----------------------
migration/rdma.h       |  34 ++++++++++++
migration/trace-events |  28 +++++-----
10 files changed, 155 insertions(+), 200 deletions(-)
[PATCH v3 00/10] migration: Remove QEMUFileHooks
Posted by Juan Quintela 11 months, 3 weeks ago
Hi

Changes in v3:
- fix rdma_migration to reset clearly (thanks danp)
- redo the cherks for migration/rdma
- rebased on top of the counters series:
[PATCH 00/21] Migration: More migration atomic counters
Based-on: Message-Id: <20230508130909.65420-1-quintela@redhat.com>

Please, review.

Changes in v2:
- rebased on top of migration-20230428 pull (second try)
- several of the patches on the PULL request
- make clean that we don't use rdma code when we don't use rdma
- create migrate_rdma() to check if we are in rdma migration.

There is no hope for this code. I am trying to cleanup the rest of
rdma calls, but the code is convoluted as hell.  And it lies with the
ram counters as crazy.

Please review.

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 (10):
  migration: Create migrate_rdma()
  migration/rdma: Unfold ram_control_before_iterate()
  migration/rdma: Unfold ram_control_after_iterate()
  migration/rdma: Remove all uses of RAM_CONTROL_HOOK
  migration/rdma: Unfold hook_ram_load()
  migration/rdma: Create rdma_control_save_page()
  qemu-file: Remove QEMUFileHooks
  migration/rdma: Move rdma constants from qemu-file.h to rdma.h
  migration/rdma: Remove qemu_ prefix from exported functions
  migration/rdma: Check sooner if we are in postcopy for save_page()

 migration/migration.c  |   1 +
 migration/migration.h  |   3 +
 migration/options.c    |   7 +++
 migration/options.h    |   1 +
 migration/qemu-file.c  |  61 +--------------------
 migration/qemu-file.h  |  49 -----------------
 migration/ram.c        |  50 +++++++++++++----
 migration/rdma.c       | 121 +++++++++++++++++++----------------------
 migration/rdma.h       |  34 ++++++++++++
 migration/trace-events |  28 +++++-----
 10 files changed, 155 insertions(+), 200 deletions(-)

-- 
2.40.0
Re: [PATCH v3 00/10] migration: Remove QEMUFileHooks
Posted by Peter Xu 11 months, 1 week ago
On Tue, May 09, 2023 at 02:06:50PM +0200, Juan Quintela wrote:
> Hi
> 
> Changes in v3:
> - fix rdma_migration to reset clearly (thanks danp)
> - redo the cherks for migration/rdma
> - rebased on top of the counters series:
> [PATCH 00/21] Migration: More migration atomic counters
> Based-on: Message-Id: <20230508130909.65420-1-quintela@redhat.com>

Patch 9 should logically be split and spread into previous patches, but not
a big issue.

For the series:

Reviewed-by: Peter Xu <peterx@redhat.com>

-- 
Peter Xu